作者os653 ()
看板C_and_CPP
标题[问题] double thread double buffer
时间Tue Oct 3 15:39:24 2023
想请问关於下列网址中,答案是否有问题
https://stackoverflow.com/questions/60351527/multithreaded-double-buffer
按原PO所说,有两个thread,两个buffer
两个thread一个只管读,一个负责写
由只管写的thread负责swap buffer
在Jérôme Richard的回答中,使用了两个mutex去处理同步问题
我的疑问是,他的答案似乎是适用於
「有多个thread只管读,多个thread负责写,谁swap都可以」的情景
而原PO的问题是
「有一个thread只管读,另一个thread负责写,由写的thread负责swap」
按照原PO的问题,请问是否只使用一个mutex去处理同步问题就行
也就是把Jérôme Richard回答中的lkWrite拔掉,也应该可以正常工作?
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 1.168.99.42 (台湾)
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/C_and_CPP/M.1696318766.A.B1D.html
1F:→ Caesar08: write里面那个lock是多余的 10/03 18:13
2F:→ yvb: There will "only" be two threads ... only 呢? 10/03 23:46
3F:→ os653: 文章中,好像没有上面那句?不知您是指? 10/05 03:19
4F:→ yvb: 我是说原文并没有 only 字样 10/05 18:44