Merge lp://qastaging/~raof/mir/scratch-threadsafe-list-itch into lp://qastaging/mir
Status: | Work in progress |
---|---|
Proposed branch: | lp://qastaging/~raof/mir/scratch-threadsafe-list-itch |
Merge into: | lp://qastaging/mir |
Diff against target: |
294 lines (+81/-100) 3 files modified
src/include/common/mir/thread_safe_list.h (+73/-98) tests/unit-tests/scene/test_timeout_application_not_responding_detector.cpp (+2/-0) tests/unit-tests/test_thread_safe_list.cpp (+6/-2) |
To merge this branch: | bzr merge lp://qastaging/~raof/mir/scratch-threadsafe-list-itch |
Related bugs: |
Reviewer | Review Type | Date Requested | Status |
---|---|---|---|
Alan Griffiths | Needs Fixing | ||
Alexandros Frantzis (community) | Needs Information | ||
Andreas Pokorny (community) | Approve | ||
PS Jenkins bot (community) | continuous-integration | Needs Fixing | |
Review via email:
|
This proposal supersedes a proposal from 2015-10-21.
Commit message
Simplify ThreadSafeList (by relaxing an invariant).
It's almost never a good idea to modify the list as you're iterating over it.
Where it *is* sensible, being able to remove yourself from subsequent runs is good enough."
Description of the change
Scratch my threadsafe-list itch.Simplify ThreadSafeList (by relaxing an invariant).
I find this substantially easier to reason about, and it's almost certainly faster for the common case of iterate-often, mutate seldom.
Unmerged revisions
- 3045. By Chris Halse Rogers
-
Optimise the no-contention case for ThreadSafeList mutation
- 3044. By Chris Halse Rogers
-
Simplify ThreadSafeList (by relaxing an invariant).
It's almost never a good idea to modify the list as you're iterating over it.
Where it *is* sensible, being able to remove yourself from subsequent runs
is good enough.
Bah! Unrelated changes!