Wie bekannt std::shared_timed_mutex
(C++ 14) und std::shared_mutex
(C++ 17) einen Leistungsvorteil gegenüber std::mutex
nur für eine sehr langestd::shared_lock
s (liest-Operationen), und wenn mehr als std::shared_lock
s std::unique_lock
s.Gibt es einen Ansatz von Shared Mutex für eine kurze gemeinsame Operationen und einige eindeutige Operationen?
Aber auch wenn die meisten seiner Leseoperationen sind, und sie sind kurz, dann std::mutex
schneller sein wird - das ist, warum in der C++ 11-Standard std::shared_mutex
und std::shared_timed_mutex
wurden sofort nicht enthalten.
Gibt es einen Ansatz oder Durchführung eine Art gemeinsamen Mutex, die einen Leistungsvorteil gegenüber std::mutex
hat, auch für kurze Operationen, wenn der liest nicht nur mehr, und noch viel mehr, wie unten?
std::unique_lock
/std::shared_lock
= 1/1 000 000 000 000
Gibt es eine Annäherung der gemeinsamen Mutex für kurze Shared-Operationen und einige einzigartige Operationen?
ive meine eigene einfache 'gemeinsame Spin-Lock' vor einer Weile geschrieben, vielleicht ist es schneller (IDK) https://github.com/domso/network/blob/master /network/rw_mutex.h https://github.com/domso/network/blob/master/src/rw_mutex.cpp – Domso