【发布时间】:2010-08-24 14:29:01
【问题描述】:
Windows 服务有一个打开的套接字正在接收数据(在单独的线程上)
为了响应OnShutdown 服务,我想通知工作线程关闭,但它目前在Receive 上被阻止。
目前我在Receive 上超时以检查是否有待处理的停止请求。有没有更好的方法,而不是等待超时通知工作线程停止接收并执行其关闭逻辑?
【问题讨论】:
-
最好的方法是使用异步套接字。无论如何,它们的扩展性要好得多。
-
在某种意义上它是异步的。当然,我没有使用 BeginReceive——但即使我使用了,我如何让该线程在等待数据时停止接收。
标签: .net multithreading sockets