diff options
Diffstat (limited to 'results/scraper/fex/1687')
| -rw-r--r-- | results/scraper/fex/1687 | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/results/scraper/fex/1687 b/results/scraper/fex/1687 new file mode 100644 index 000000000..cba9917de --- /dev/null +++ b/results/scraper/fex/1687 @@ -0,0 +1,12 @@ +shared_mutex with unique lock priority +Having a shared lock where unique locks take priority would be beneficial. +std::shared_mutex gives shared locks priority when a shared lock is already held. + +With a new lock with unique priority it should have the properties: + +1. When a shared lock is already held and then a unique lock is attempting to be made + - Subsequent `try_lock_shared` should immediately return false even though unique_lock isn't held yet + - Subsequent `lock_shared` should block until unique lock is granted and relinquished + - If a subsequent unique lock is pending while a unique lock is already held then a shared lock shouldn't be able to win the contention. + +Might be worth using `WFE/WFET` for faster userspace checking of lock if it is expected to not be contended for too long. \ No newline at end of file |