Christian Thaeter
a115759128
new mutex and recmutex implementation (breaks sync.hpp for now)
...
prepares that chained sections if different kinds can be mixed
makes recmutexes typesafe
improves nobug tracking
2009-06-03 18:22:07 +02:00
Christian Thaeter
66fb3afe83
Fix: new nobug renamed some macros
2008-12-29 02:52:46 +01:00
Christian Thaeter
532f609ea1
experimental thread implementation
...
* This spawns a thread, almost as proposed
* The condition variable for finishing is not yet implemented
* Most Parameters are ignored
2008-12-29 01:50:38 +01:00
Christian Thaeter
23f89b027a
fixes for new NoBug (mandatory upgrade)
...
I managed to break some interface compatibility with NoBug finally. The
new NOBUG_ALPHA_COMMA macros shall stay there now.
2008-12-27 18:42:10 +01:00
be2daf64ff
whitespace
...
(trying to compare LUMIERA_MUTEX_SECTION and LUMIERA_RECMUTEX_SECTION)
2008-12-24 03:42:36 +01:00
Christian Thaeter
dd9e5051ba
use nobug's new RESOURCE_HANDLE_COMMA_INITIALIZER and some cosmetics along
2008-10-15 15:51:48 +02:00
Christian Thaeter
ed246ab222
Adding recursive mutexes, fix chained mutex to take only one parameter
...
Recursive mutex can be locked multiple times by a single thread they
are initialitzed by lumiera_recmutex_init() and used by LUMIERA_RECMUTEX_*
macros.
Chained mutex use the mutexacquirer from the outer scope now. Maybe its
later needed to pass acquirers explicit, we will see.
2008-10-15 15:49:35 +02:00
Nicholas Sinnott-Armstrong
7d86367909
Added preliminary support for chained mutex calls.
2008-10-15 15:49:35 +02:00
Christian Thaeter
d8f59fb722
Simplyfiy resource management
...
Move the resource announce/forget into the rwlock init/destroy
Move resource announcement/forget into the mutex init/destroy
2008-08-10 12:19:09 +02:00
Christian Thaeter
d0b6919eea
locking.h bites the dust
2008-08-10 12:19:09 +02:00
Christian Thaeter
b2b205f6db
remove unnecessary volatile (forgotten for a test)
2008-08-10 12:19:09 +02:00
Christian Thaeter
07f06d0d88
big mutex update, dropped old acquirer
...
Acquiring mutexes is now wraped in a easy to use MUTEX_SECTION macro.
This scheme will be extended for chained lock propagation soon.
Notes:
* NoBug resourcemanagement is now part of the lower layer,
RESOURCE_ENTER/RESOUCE_LEAVE are maintained automatically
* one must still call RESOURCE_ANNOUNCE/RESOURCE_FORGET, because we want
to maintain high level information about resources.
* MUTEX_SECTIONS must not be left with any kind of jump
2008-08-10 12:19:09 +02:00
Mano Stienen
1d8bc98429
moved documentation from mutex.c to .h
2008-07-11 06:32:56 +02:00
Christian Thaeter
00b9dff106
Doxygen config update
...
* set EXPORT_ALL=NO to leave out undcoumented entities.
* Fix a lot @file directives
2008-05-19 16:27:29 +02:00
Christian Thaeter
293b872b5d
extend the MUTEX_SECTION macro with NoBug resource tracking
...
LUMIERA_MUTEX_SECTION takes now a nobug flag as first argument and
a nobug resource-handle as second argument.
This change works forward for the NoBug resource tracker and
deadlock detector.
2008-05-19 16:23:15 +02:00
Christian Thaeter
69ba3b389c
LUMIERA_MUTEX_SECTION(mutex) macro for sections of mutex protected code
2008-05-13 20:57:19 +02:00
Christian Thaeter
27ca8a7362
let LUMIERA_DIE take an error identifier as parameter
2008-05-13 20:54:05 +02:00
e737b9ef1b
Lumiera renaming -- source code
2008-03-10 06:09:44 +01:00
0baf15ca94
Cinelerra-3 renamed to Lumiera -- copyright and documentation
2008-03-10 04:25:03 +01:00
Odin Omdal Hørthe
74a7bf4493
Made a @file-skeleton for doxygen for the files in src/lib/
2007-10-20 17:27:27 +02:00
Odin Omdal Hørthe
9bf36e1eb4
Moved function doc from mutex.h to mutex.c
2007-10-20 16:57:39 +02:00
Christian Thaeter
96b9f65e6f
some unmmerged changes?
2007-09-19 06:58:54 +02:00
Christian Thaeter
f1aba12af8
renamed *lock to *acquirer
2007-09-03 06:40:44 +02:00
Christian Thaeter
0a31c7d2db
mutex implementation
2007-09-02 17:52:30 +02:00