CX Framework
Cross-platform C utility framework
Loading...
Searching...
No Matches
tqcomplex.cxh
1#include "tqueue.cxh"
2#include <cx/taskqueue/task/complextask.cxh>
3
4[methodprefix ctaskqueue] class ComplexTaskQueue extends TaskQueue {
5 PrQueue advanceq; // tasks that are being advanced out of the defer and/or schedule lists
6 [ref] [sorted] sarray:object:ComplexTask scheduled; // tasks that are scheduled to run at a later time, sorted by time
7 [refkeys] hashtable:object:none deferred; // tasks that are deferred indefinitely, to be held until they are advanced
8
9 bool schedule([in] ComplexTask *task, int64 delay); // add a task scheduled to run a relative time in the future
10 bool defer([in] ComplexTask *task); // add a task but defer it indefinitely
11 bool advance([in] ComplexTask *task);
12
13 override add;
14 override _processDone;
15 override _processExtra;
16 override _queueMaint;
17 override _runTask;
18 override _clear;
19 factory create(strref name, uint32 flags, int64 gcinterval, [in] TQRunner *runner, [in] TQManager *manager, [in] [opt] TQMonitor *monitor);
20}