c++11提供了標準的執行緒庫,在併發的場景中為解決共享資料衝突的問題,提供了互斥鎖。
互斥類的成員函式是lock()和unlock()。在進入臨界區時,執行lock()加鎖操作,如果這時已經被其它執行緒鎖住,則當前執行緒在此排隊等待。退出臨界區時,執行unlock()解鎖操作。
int number = 0;
mutex g_lock;
int threadproc1()
return 0;
}
更好的辦法是採用」資源分配時初始化」(raii)方法來加鎖、解鎖,避免了在臨界區中因為丟擲異常或return等操作導致沒有解鎖就退出的問題。。c++11的標準庫中提供了std::lock_guard類模板做mutex的raii。
#include #include #include using namespace std;
//mutex mlock;
int num = 100;
//void funthread1()
//lock_guard的作用域與普通物件相同,可以在乙個方法中使用多次 }
int main()
getchar();
return 0;
}
使用說明 附註工具使用說明
附註工具使用說明 附註工具用途 附註工具主要用於更新利用word附註應用程式生成的帶域 的附註,該工具在word右鍵 更新鏈結 的基礎上進行了優化,故在使用時,不能再利用word右鍵 更新鏈結 而要用本工具的 更新當前鏈結 或 更新所有鏈結 使用說明 一 更換路徑 當利用word附註應用程式生成帶域...
使用說明 農用遮光網使用說明
農用遮光網使用說明 建築防塵網購買方 建築施工企業 在購買建築防塵網時,應該對 作出比較,可以分辨品牌 型號,且購買時應該在一定程度上了解信譽良莠。建築防塵網購買方 市場售賣方 在選購建築防塵網時,可以把 作為基礎,好的 可以用來彌補信譽不足,而差的 則需要按照你的服務收費。農用遮光網使用說明 用途...
Hibernate tools 使用說明
05年的8月份第一次接觸hibernate tools,使用起來感覺還不錯,但也沒有深入研究,後來由於一直在做乙個專案,再後來用了一陣myeclipse,現在換了公司,使用wtp all in one eclipse的乙個版本 生成domain的時候使用了hibernate tools,發現都不知怎...