Commit Graph

14 Commits

Author SHA1 Message Date
36f4ba035c thread: rename thread primitives from job namespace 2018-03-23 14:10:20 +11:00
2d7e3e5d7d build: prefer iosfwd over iostream 2018-03-22 16:11:13 +11:00
9bfefb3dab job/queue: use a reaper thread to clear finished tasks
clearing the tasks on the worker threads can cause the queue to stall
while the cookie is notified, released, and deleted. we punt the cleanup
off to a reaper thread so that the workers can continue.
2018-03-22 14:59:03 +11:00
82d63f68b1 job/flag: improved parallelism test 2018-03-20 18:02:20 +11:00
2508c5cc71 test: read TAP status before exit 2018-03-20 14:50:46 +11:00
5dda5d130a spinlock: reduce iterations for testing
4096 iterations should be enough to demonstrate any issues, but still
execute quickly enough for everyday testing
2018-03-15 23:49:12 +11:00
f3f3666877 job/queue: rework locking for reliability 2018-03-15 15:25:19 +11:00
0c824919de job/monitor: add simple monitor adapter 2018-03-15 15:25:18 +11:00
c9dea18881 job/semaphore: add a basic semaphore implementation 2018-03-15 15:25:14 +11:00
4154066a0e job/ticketlock: add a trivial ticketlock 2018-03-15 15:23:43 +11:00
f04e6e4de5 job/spinlock: add simple spinlock implementation 2018-03-15 15:23:43 +11:00
3a26a98db7 job/flag: add a one off event object 2018-03-15 15:23:43 +11:00
1fd58c8967 job/event: a simple reusable edge triggered event 2018-03-15 15:23:43 +11:00
320fe6c378 job/queue: add trivial job queuing system 2017-07-03 17:05:01 +10:00