Author: Armin Rigo <ar...@tunes.org> Branch: c8-locking Changeset: r1749:d1eed2e7d2a4 Date: 2015-04-09 13:07 +0200 http://bitbucket.org/pypy/stmgc/changeset/d1eed2e7d2a4/
Log: more doc diff --git a/c8/LOCKS b/c8/LOCKS --- a/c8/LOCKS +++ b/c8/LOCKS @@ -53,3 +53,19 @@ - _stm_validate() - push_large_overflow_objects_to_other_segments() - nursery.c calling synchronize_object_enqueue() + + + +mutex and conditions +==================== + +There is also one global mutex and a few condition codes. It's +unclear if these are still the best solution. + +The mutex is acquired in stm_start_transaction() and in +stm_commit_transaction(). The main purpose is to wait for or signal +the C_SEGMENT_FREE condition code. + +The C_AT_SAFE_POINT and C_REQUEST_REMOVED condition codes are used by +synchronize_all_threads(). That's used only in rare cases, for +example because we want to start a major collection. _______________________________________________ pypy-commit mailing list pypy-commit@python.org https://mail.python.org/mailman/listinfo/pypy-commit