作者teamspike (市政府7F)
看板C_Sharp
标题Re: [问题] 这种状况,表示得用多执行绪吗
时间Fri May 30 17:08:44 2008
小弟不才,又有一些问题想请问
TcpListener.BeginAcceptSocket()必须要遇到EndAcceptSocket()
才会结束并且取得聆听的结果
非同步的好处就是让小绿人不回头一直往前冲
结果在下为了让程式一直保持聆听状态,写了如下的指令
bool keepListen = true;
while (keepListen)
{
TcpListener.BeginAcceptSocket(...)
....
}
想说在停止钮把keepListen设成false就好
果不其然,程式没有回应
我想可能是BeginAcceptSocket在Message queue里面爆满狂排队
每个人都在EndAccessSocket吧
这下真的是考倒我了
要保持聆听状态又要以另外一个按钮来停止聆听状态
到底该怎麽做呢?
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 140.116.216.193
1F:推 tomex:你的模型可以用ManualResetEvent来协调,BeginXX後WaitOne() 05/31 01:05
2F:推 tomex:然後在BeginXX()中的delegate函式去set event,就能听其他 05/31 01:06