Commit graph

15 commits

Author SHA1 Message Date
Juan Jose Garcia Ripoll
9287a516ff Yet another iteration for condition variables: now the lock is only released only once the thread has been added to the queue. 2012-07-13 21:35:38 +02:00
Juan Jose Garcia Ripoll
595f3dbe58 The previous implementation of condition variables was wrong: it assumed that the signaling thread did not own the lock. 2012-07-11 00:06:33 +02:00
Juan Jose Garcia Ripoll
e54d9a6173 Rename type_of -> ecl_t_of 2012-07-05 23:07:34 +02:00
Juan Jose Garcia Ripoll
825fc8cbd3 Cnil and Ct are now part of legacy 2012-06-30 23:01:40 +02:00
Juan Jose Garcia Ripoll
d93cefad6e Thanks to the chained wakeup event, ecl_wakeup_waiters() does no longer need an extra argument 2012-04-15 23:22:22 +02:00
Juan Jose Garcia Ripoll
a20b8b9218 ecl_wakeup_waiters now take an argument with the number of processes to awake 2012-04-15 11:09:42 +02:00
Juan Jose Garcia Ripoll
1de1d7e428 ecl_wait_on() takes the environment as an argument 2012-03-31 11:25:56 +02:00
Juan Jose Garcia Ripoll
fc62d7927f Eliminated all of the remnants from the ecl_atomic_queue interface 2012-03-29 18:57:31 +02:00
Juan Jose Garcia Ripoll
658d1c53ab Removed unused code and refactored all the queue code into queueu.d 2012-03-29 17:37:35 +02:00
Juan Jose Garcia Ripoll
9331ec4ac5 Condition variables must _always_ wake up somebody. 2012-03-29 16:47:55 +02:00
Juan Jose Garcia Ripoll
4cf99dce0b Reuse the cons that is used for adding a process to a wait queue. 2012-03-29 15:25:59 +02:00
Juan Jose Garcia Ripoll
50cb6b5e07 The condition function in ecl_wait_on() now takes an environment argument. 2012-03-18 13:29:49 +01:00
Juan Jose Garcia Ripoll
141b2f909b Implemented a first version of userspace condition variables. 2012-03-17 20:56:58 +01:00
Juan Jose Garcia Ripoll
d5296f2563 Implement mutexes using CAS. Deactivate condition variables temporarily. 2012-02-12 23:31:29 +01:00
Juan Jose Garcia Ripoll
3dfb2d6dcb Split the threads code into separate files. 2010-10-23 21:43:46 +02:00