C# 多线程通信?

vekin001 2013-03-29 04:07:57
有两个线程 各自运行
现在第一个线程要通知另一个线程记录下东西
怎么通知啊?
...全文
214 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
tigerhunter83 2013-03-29
  • 打赏
  • 举报
回复
用事件
Form 类里定义
AutoResetEvent writeEvent = new AutoResetEvent(false);

线程1
在需要通知线程2写东西的地方,调用
writeEvent.Set();

线程2
while(true)
{
writeEvent.WaitOne();
}

这样就行了。
群龙 2013-03-29
  • 打赏
  • 举报
回复
也可以试一下委托和事件
种草德鲁伊 2013-03-29
  • 打赏
  • 举报
回复
同一个进程里需要这么麻烦?
Azrael_King 2013-03-29
  • 打赏
  • 举报
回复
线程间的通信吗?这比较麻烦了,简单点是不是可以定义一个全局变量,当线程1需要线程2记录东西时,就将全局变量设置一个值,线程2每过一段时间去读变量的值,如果是协定的值就执行记录操作
_小黑_ 2013-03-29
  • 打赏
  • 举报
回复
好深奥,球详细解释
bdmh 2013-03-29
  • 打赏
  • 举报
回复
管道,内存映射,消息等
stonespace 2013-03-29
  • 打赏
  • 举报
回复
把通知保存到一个队列中,另一个线程用一个死循环不断从队列中读取通知并且处理,

110,536

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

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