Monitor(VmThread owner, int lockCount, Object object) { this.owner = owner; this.lockCount = lockCount; if (lockCount < 1) { throw new IllegalArgumentException("LockCount must be >= 1"); } this.object = object; this.mutex = new ProcessorLock(); this.enterQueue = new VmThreadScheduleQueue("mon-enter"); this.notifyQueue = new VmThreadWaitQueue("mon-notify");
public Monitor() { this.lockCount = 0; this.monitorLock = 0; this.owner = null; this.enterQueue = new VmThreadQueue.ScheduleQueue("mon-enter"); this.notifyQueue = new VmThreadQueue.ScheduleQueue("mon-notify");
    Monitor(VmThread owner, int lockCount, Object object) {        this.owner = owner;        this.lockCount = lockCount;        if (lockCount < 1) {            throw new IllegalArgumentException("LockCount must be >= 1");        }        this.object = object;        this.mutex = new ProcessorLock();        this.enterQueue = new VmThreadScheduleQueue("mon-enter");        this.notifyQueue = new VmThreadWaitQueue("mon-notify");    }