Ich habe einige C-Code (auf Linux), die in einer thread-sicheren Weise ausgeführt werden muss. Es ist sehr wenig Streit, aber ich muss es bewachen, um die Richtigkeit zu gewährleisten.Wie teuer ist eine niedrige Konkurrenz Mutex in Bezug auf CPU
Ich habe die Möglichkeit, lokale Variablen zu verwenden, um es zu schützen (was funktioniert, basierend auf wie der Code geschrieben wird), aber da ich eine Mutex-Variable habe, was ist der bessere Ansatz in Bezug auf CPU-Nutzung?
Wie ich erwarte, fast nie zu haben, Streit auf dem Schloss ist Mudex Erwerb und Freigabe deutlich teurer im Vergleich zu prüfen, inkrementieren und dekrementieren eine lokale Variable?
Ich benutze den Mutex woanders, also speichere ich keinen Speicher.
Welche Plattform? Unter Linux mit Mutex, das über futex implementiert wird, gibt es keinen Kontextwechsel, wenn Mutex nicht konkurriert. –
Platform is linux –
"Ich habe die Möglichkeit, lokale Variablen zu verwenden, um sie zu schützen) "- das klingt extrem unwahrscheinlich. – user2357112