summaryrefslogtreecommitdiffstats
path: root/libdimension/threads.c
Commit message (Collapse)AuthorAgeFilesLines
* future: Add a race-free way to examine a partial computation.Tavian Barnes2014-04-231-9/+28
| | | | | | This allows safe OpenGL previews, for example. dmnsn_future* learned the dmnsn_future_{pause,resume}() functions which cause all worker threads to block. render.test now survives Helgrind with no errors.
* Rename progress objects to future objects.Tavian Barnes2011-10-191-7/+6
|
* Rename dimension-impl.h to dimension-internal.hTavian Barnes2011-08-251-1/+1
|
* Cancel all ccthreads first before joining them on cleanup.Tavian Barnes2011-08-191-0/+6
|
* Support thread cancelation, and handle ^C in the client.Tavian Barnes2011-08-191-19/+55
|
* Wrap pthread API to reduce duplicated error tests.Tavian Barnes2011-08-021-0/+138
|
* Add some sanity checking.Tavian Barnes2011-07-261-0/+2
|
* New DMNSN_INTERNAL tag.Tavian Barnes2011-04-211-13/+13
|
* Don't use awkward (*fptr)() syntax.Tavian Barnes2011-04-031-6/+6
|
* Add some missing documentation.Tavian Barnes2011-03-081-0/+1
|
* Update email address.Tavian Barnes2011-03-081-1/+1
|
* New dmnsn_warning() API, remove different severities.Tavian Barnes2011-03-081-5/+4
|
* New dmnsn_execute_concurrently internal API.Tavian Barnes2011-02-211-0/+51
| | | | This gets all pthread code out of raytrace.c.
* Document libdimension with Doxygen.Tavian Barnes2010-11-141-3/+11
|
* Fix behaviour when the error handler itself calls dmnsn_error().Tavian Barnes2010-09-301-3/+7
|
* Make dmnsn_new_thread() bail out on errors.Tavian Barnes2010-09-291-2/+4
|
* Add dmnsn_free() to match dmnsn_malloc().Tavian Barnes2010-09-261-1/+1
|
* Rename dimension_impl.h to dimension-impl.h.Tavian Barnes2010-07-141-1/+1
|
* Fix memory handling in dmnsn_new_thread().Tavian Barnes2010-05-211-1/+2
|
* New dmnsn_new_thread() function.Tavian Barnes2010-05-091-0/+58
Two advantages: first, waiters are guaranteed to wake if a dmnsn_error() cancels a thread. Second, the thread library is fully abstracted over by threads.{c,h} and progress.{c,h} now, though raytrace.c is still using pthread_create() directly.