f6056153e3
rename root namespace from util to cruft
...
This places, at long last, the core library code into the same namespace
as the extended library code.
2018-08-05 14:42:02 +10:00
79409eb6fe
avoid push_back in loops
...
Detected by clang-tidy.
2018-07-24 15:49:11 +10:00
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