PTT
Submit
Submit
選擇語言
正體中文
简体中文
PTT
Marginalman
[閒聊] mutex_lock 是會直接把執行續卡住嗎
作者:
Wardyal
(Wardyal)
2024-08-08 15:26:16
func1()
{
...
...
...
mutex_lock(&my_lock)
...
return;
}
func2()
{
mutex_unlock(&my_lock)
}
我假如
func1();
func1();
那第一個func1()會順利執行
然後第二個func1()會卡在mutex_lock()
直到我下func2() 是這樣嗎
我剛剛又把自己的code鎖爛了
現在在debug
作者:
yam276
('_')
2024-08-08 15:35:00
恐龍書都有寫
作者:
Wardyal
(Wardyal)
2024-08-08 15:36:00
恐龍書在家 而且我沒看完過
作者:
lovez04wj06
(車前草)
2024-08-08 15:44:00
沒理解錯的話會卡在第一個吧?你解了一個他會執行第二個,然後又卡住。直到下第二次解鎖才是完整完成。
作者:
Wardyal
(Wardyal)
2024-08-08 15:47:00
喔喔 他會先解第二個喔我以為他是會先解第一個
作者:
argorok
(s.green)
2024-08-08 15:47:00
你這樣lock 2次是undefined behavior吧
作者:
Wardyal
(Wardyal)
2024-08-08 15:48:00
我現在是第二次跑會卡住 因為我中間有些retrun忘記unlock實際上unlock是定義在func1裡面
作者:
lovez04wj06
(車前草)
2024-08-08 15:50:00
他會卡在你下的那個位置,先進應該是先解的,但你的假程式… lock …前面有一部分會執行到,後面也有。你解鎖的話第二次的func1也會執行到一部分然後進鎖
作者:
Wardyal
(Wardyal)
2024-08-08 15:52:00
恩恩 大概懂了 感謝
作者:
lovez04wj06
(車前草)
2024-08-08 15:52:00
反正邏輯就是,你鎖幾次,就要解幾次,沒解到一樣的數量一定有鬼
作者: qpeo0122
2024-08-08 16:09:00
用這個,std::lock_guard<std::mutex> lock(mtx);
繼續閱讀
[姆咪] 桃法院第五度拒絕鄭搜索票
GeiKuJQ
Re: [閒聊] 唉
ljk476820
[瓦特] 自然媽媽又被
crazypitch
Re: [原神] 現在是不是幼幼遊戲
miHoYo
Re: [姆咪] 奧運
qscxz
[姆咪] 你咖認證
mikenekolove
Re: [原神] 現在是不是幼幼遊戲
miHoYo
[閒聊] 你咖財報
hdlihnk39
Re: [閒聊] 股票
qscxz
Re: [閒聊] 唉
zenice
Links
booklink
Contact Us: admin [ a t ] ucptt.com