2012-09-10 95 views
1

我通常使用的創建使用OpenMP

#pragma omp critical(lock) 
{ ... } 

指令,當我需要確保只有一個線程執行所給的一段代碼共享鎖。

所以我在尋找的是一種使用類似的東西來實現共享鎖和排他鎖的方法。我有多個線程可以讀取或寫入一個變量。當一個線程正在寫入時,它將阻止所有其他線程讀取或寫入。然而讀取變量不應該阻止任何東西。我怎樣才能做到這一點?

回答

0

不幸的是,OpenMP不支持讀寫器鎖定。您可以改用其他庫,如提供shared_lock的Boost。