[boost::thread] Lock Member einer Klasse
-
Hallo,
also es geht um folgendes:
Ich will einer Klasse eine Lock und eine Unlock Funktion verpassen.
Ich arbeite mit boost:threads.
Mein Problem:
Laut Boost sollte man das nicht machen, sondern Locks nur innerhalb einer Funktion machen, weil Locks selbst nicht Thread sicher sind (-> http://www.boost.org/doc/html/thread/rationale.html#thread.rationale.locks).Hab ich trotzdem noch eine Chance ein Lock und Unlock Funktion zu bauen?
class CObject { public: CObject() : object_lock(object_mutex,false) {} Lock() {object_lock.lock();} Unlock() {object_lock.unlock(); } private: boost::mutex object_mutex; boost::mutex::scoped_lock object_lock; };
-
Dieser Thread wurde von Moderator/in Jochen Kalmbach aus dem Forum WinAPI in das Forum C++ verschoben.
Im Zweifelsfall bitte auch folgende Hinweise beachten:
C/C++ Forum :: FAQ - Sonstiges :: Wohin mit meiner Frage?Dieses Posting wurde automatisch erzeugt.
-
Hm, ein Scoped Lock wäre sicherer.
Ansonsten müsstest du das natürlich implementieren können.
Für was brauchst du das denn?
-
Hab ich trotzdem noch eine Chance ein Lock und Unlock Funktion zu bauen?
Mit boost.thread nicht.