如果需要加鎖用以下方式加鎖有沒有問題。class A{public:A();~A();public:std::hash_map<__int64,LPVOID> act_var;public:LPVOID read(__int64);private:kelib::mutex::MutexLock mutex_;};A::A(){}A::~A(){}LPVOID A::read(__int64 index){kelib::mutex::MutexLockGuard lock(mutex_); //加鎖std::hash_map<__int64,LPVOID>::iterator iter=act_var.find(index);if(iter!=act_var.end()){return (*iter).second;}return NULL;}
2 回答

小唯快跑啊
TA貢獻(xiàn)1863條經(jīng)驗(yàn) 獲得超2個(gè)贊
Java的多線程兩種方式。一是準(zhǔn)備好類從Thread類繼承。其一是實(shí)現(xiàn)Runnable接口。前者是線程運(yùn)行的格式(如果該實(shí)例是線程t):t.start();在一個(gè)新的線程(噸)。開始的形式,后者()。

桃花長(zhǎng)相依
TA貢獻(xiàn)1860條經(jīng)驗(yàn) 獲得超8個(gè)贊
我有個(gè)疑問,你只加鎖,不解鎖嗎?還是說(shuō)你的解鎖沒寫出來(lái)?而且,你沒有修改要讀取的變量的話,是不是就可以不用鎖定了?
添加回答
舉報(bào)
0/150
提交
取消