about summary refs log tree commit diff
path: root/src/rt/sync
AgeCommit message (Collapse)AuthorLines
2010-10-20Add a virtual destructor to rust_thread in sync.h, to quiet the compilerPatrick Walton-0/+2
2010-09-16Fixed deadlock caused by the message pump not being notified of new message ↵Michael Bebenita-1/+1
sends.
2010-09-10Cleanup, refactoring, and some runtime tests.Michael Bebenita-0/+20
2010-09-10Added lock_and_signal::signal_all(), and made the rust_kernel::join() use ↵Michael Bebenita-9/+25
wait instead of yield.
2010-09-08Tidy up the sync dir, remove dead or mis-designed code in favour of OS ↵Graydon Hoare-306/+125
primitives, switch rust_kernel to use a lock/signal pair and wait rather than spin.
2010-09-07Fixed race in the rust kernel.Michael Bebenita-2/+10
2010-09-07Lots of design changes around proxies and message passing. Made it so that ↵Michael Bebenita-2/+0
domains can only talk to other domains via handles, and with the help of the rust_kernel.
2010-09-07Added a thread utility class to factor out operations on threads.Michael Bebenita-0/+64
2010-09-07Added a few utility classes, cleaned up the include order of .h files, and ↵Michael Bebenita-0/+2
started to make the Rust kernel own domain message queues rather than the Rust domains themselves.
2010-08-24Implemented an lock free queue based on this paper ↵Michael Bebenita-13/+284
http://www.cs.rochester.edu/~scott/papers/1996_PODC_queues.pdf, the "lock free queue" we had before wasn't lock free at all.
2010-08-17Made the lock_free_queue lock (temporarily, until fixed).Michael Bebenita-0/+7
2010-08-16Putting out the burning tree on Windows. Turns out you can completely starve ↵Michael Bebenita-2/+2
threads by not yielding on windows/vmware, really weird.
2010-08-11Added support for task sleeping in the scheduler.Michael Bebenita-0/+86
2010-08-09Added class to abstract away platform specific thread primitives.Michael Bebenita-0/+21
2010-08-09Added timed_wait to condition variables.Michael Bebenita-5/+24
2010-07-19Added a message passing system based on lock free queues for inter-thread ↵Michael Bebenita-16/+119
communication. Channels now buffer on the sending side, and no longer require blocking when sending. Lots of other refactoring and bug fixes.
2010-06-23Populate tree.Graydon Hoare-0/+171