有没有这样一个多线程同步等待函数?

有没有这样一个多线程同步等待函数? 要求发出一个信号到其他线程后,自己马上进入等待状态,发出信号和等待是一个原子操作,不可被中断。waitforsingleobject, WaitForMultipleObjects,都达不到要求啊


Thread1.Execute;
begin
while not Terminated do
begin
WaitForMultipleObjects(x, Handles, True, INFINITE);
..............
.....
Event.SetEvent; //发出信号, 通知其它线程
end
end

这里等待和发出信号 不是原子操作, 可能会导致问题。
...全文
653 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
_xiaowugg_ 2017-09-12
  • 打赏
  • 举报
回复
自己写一个咯 。。
kithspan 2017-07-12
  • 打赏
  • 举报
回复
不知道你想干吗, 要原子,EnterCriticalSection, LeaveCriticalSection
lyhoo163 2017-07-12
  • 打赏
  • 举报
回复
可以通过线程同步原理,自己写啊!

1,183

社区成员

发帖
与我相关
我的任务
社区描述
Delphi Windows SDK/API
社区管理员
  • Windows SDK/API社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧