about summary refs log tree commit diff
path: root/src/rt/sync/sync.h
AgeCommit message (Collapse)AuthorLines
2011-07-28Per-thread scheduling. Closes #682.Eric Holk-1/+1
Tasks are spawned on a random thread. Currently they stay there, but we should add task migration and load balancing in the future. This should drammatically improve our task performance benchmarks.
2011-07-13Prohibit trailing whitespace under 'tidy' script. Clean up all caught cases.Graydon Hoare-3/+3
2011-07-07Work on debugging race conditions.Eric Holk-0/+21
Ports and channels have been moved to the kernel pool, since they've been known to outlive their associated task. This probably isn't the right thing to do, the life cycle needs fixed instead. Some refactorying in memory_region.cpp. Added a helper function to increment and decrement the allocation counter. This makes it easier to switch between atomic and non-atomic increments. Using atomic increments for now, although this still does not fix the problem.
2011-07-06Removed what seems to be the last of the calls to rand(). Closes #582.Eric Holk-1/+0
2010-10-20Add a virtual destructor to rust_thread in sync.h, to quiet the compilerPatrick Walton-0/+2
2010-09-10Cleanup, refactoring, and some runtime tests.Michael Bebenita-0/+2
2010-09-07Fixed race in the rust kernel.Michael Bebenita-0/+3
2010-09-07Added a thread utility class to factor out operations on threads.Michael Bebenita-0/+21
2010-08-24Implemented an lock free queue based on this paper ↵Michael Bebenita-0/+5
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-09Added class to abstract away platform specific thread primitives.Michael Bebenita-0/+9