示例#1
0
        public static bool runRichards()
        {
            Scheduler scheduler = new Scheduler();
            scheduler.addIdleTask(ID_IDLE, 0, null, COUNT);
            Packet queue = new Packet(null, ID_WORKER, KIND_WORK);
            queue = new Packet(queue, ID_WORKER, KIND_WORK);
            scheduler.addWorkerTask(ID_WORKER, 1000, queue);

            queue = new Packet(null, ID_DEVICE_A, KIND_DEVICE);
            queue = new Packet(queue, ID_DEVICE_A, KIND_DEVICE);
            queue = new Packet(queue, ID_DEVICE_A, KIND_DEVICE);
            scheduler.addHandlerTask(ID_HANDLER_A, 2000, queue);

            queue = new Packet(null, ID_DEVICE_B, KIND_DEVICE);
            queue = new Packet(queue, ID_DEVICE_B, KIND_DEVICE);
            queue = new Packet(queue, ID_DEVICE_B, KIND_DEVICE);
            scheduler.addHandlerTask(ID_HANDLER_B, 3000, queue);

            scheduler.addDeviceTask(ID_DEVICE_A, 4000, null);
            scheduler.addDeviceTask(ID_DEVICE_B, 5000, null);
            scheduler.schedule();

            return ((scheduler.queueCount == EXPECTED_QUEUE_COUNT)
                && (scheduler.holdCount == EXPECTED_HOLD_COUNT));
        }
示例#2
0
 public HandlerTask(Scheduler scheduler)
 {
     this.scheduler = scheduler;
     this.v1 = null;
     this.v2 = null;
 }
示例#3
0
 public WorkerTask(Scheduler scheduler, int v1, int v2)
 {
     this.scheduler = scheduler;
     this.v1 = v1;
     this._v2 = v2;
 }
示例#4
0
 public DeviceTask(Scheduler scheduler)
 {
     this.scheduler = scheduler;
     _v1 = null;
 }
示例#5
0
 public IdleTask(Scheduler scheduler, int v1, int count)
 {
     this.scheduler = scheduler;
     this._v1 = v1;
     this._count = count;
 }