Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/mono/mono.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
path: root/data
diff options
context:
space:
mode:
authorMark Probst <mark.probst@gmail.com>2012-11-15 19:05:20 +0400
committerMark Probst <mark.probst@gmail.com>2012-12-09 18:02:47 +0400
commit3f011fdb1d5afcb204821af8628830e7c4cbd050 (patch)
tree39e0ede65a3ceb15a678535c878e923765cc928d /data
parentbd8d79a4423443c87a4c8cda4b26fc984d922a2b (diff)
[sgen] Fix locking of the worker distribute gray queue.
The worker distribute gray queue is written to by the main GC thread and read from by the worker thread(s) for work distribution. Locking it is therefore necessary, but we weren't doing it properly. Previously I implemented optional locking for gray queues, but that's a bad idea because it makes the enqueue fast path slower. Now gray queues are back to non-locking, but we have a new queue type, the section gray queue, which is only accessible on a gray queue section granularity, not on an individual object granularity, like regular gray queues. Performance there is not as critical, so locking is no problem.
Diffstat (limited to 'data')
0 files changed, 0 insertions, 0 deletions