stdmutex

    5熱度

    1回答

    把這個簡單的功能,通過std::mutex實施了鎖下增加一個整數: #include <mutex> std::mutex m; void inc(int& i) { std::unique_lock<std::mutex> lock(m); i++; } 我希望這(內聯後),一個簡單的方法來編譯成的m.lock()呼叫i然後m.unlock()增量。 檢查生成的

    1熱度

    2回答

    我有一個共享內存區域被兩個不同進程獨佔訪問的場景。當我啓動進程時,第一個進程成功鎖定互斥鎖,更新內存並解鎖互斥鎖。但我觀察到,當第二個進程試圖鎖定它時,它仍處於死鎖狀態,等待互斥鎖解鎖。 對於第一個和第二個進程,互斥鎖之間的時間差爲10秒。 我正在使用std :: mutex。請告訴我我錯過了什麼。