日期:2014-05-17  浏览次数:20990 次

c#socket编程,程序无法退出问题
       最近在研究socket,可是当连接后,进程就无法退出,窗口虽然关闭了,但任务管理器里进程还存在,我在窗体关闭事件里写Application.Exit()也不行,把socket连接close掉还是不行,每次都要在任务管理器中手动结束。到底是怎么回事,求指导!怎么才能关闭。

------解决方案--------------------
Process.CurrentProcess.Kill();呢
------解决方案--------------------
你是不是起新的线程了?
Thread thread = new Thread(abc);
thread.IsBackground= true;
是不是忘了加这个了 
如果Socket没有关闭 不太可能 Socket 你程序关闭 应该自动给你Dispose()的
------解决方案--------------------
想问下,你的连接里头有没有重复去连接之类的,

或者有线程在循环做某些事,你可以定义一个标识,循环中判断这个标识,而程序退出时,给这个标识赋下值,这样线程就可以退出来。


------解决方案--------------------
以前遇到过,是线程没有退出。
------解决方案--------------------
socket没关闭,线程没关闭。而且有时候用在接受上的时候,会一直阻塞在等待接受状态~