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

急!急!急!求求你们了,帮帮我吧,我给你们磕头了
我写了一个服务端程序来接收处理数据,但是现在程序出了一个问题。具体表现如下:
程序在运行一段时间之后,出现不能接收客户端发送的数据的问题,但是程度没有报错,而且在CMD中调用netstat命令查看我的程序时,程序的监听端口状态依然为listening,然后我关闭程度,再打开,程序提示监听端口被占用,关闭程序程序的监听端口状态依然为listening,使用netstat -a -n -ano找到与程序对应的PID,但是在任务管理器中却找不到与这个PID对应的进程。而且程序关闭两天了,这个端口依然被占用。我监听的线程也设置为后台线程了,不知道是什么原因。
求你们了,帮帮我吧,谢谢了,谢谢了,我给你们磕头了,我快要死了。求你们了。
socket

------解决方案--------------------
或许你"任务管理器"没有显示所有用户的进程?

可以试试netstat -anob
其中-b显示进程名称。
------解决方案--------------------
添加FormClosing事件,在其中添加代码:
System.Environment.Exit(0);   //结束进程时,关闭所有线程

试试看 
------解决方案--------------------
应该是你的while 循环没有关闭   程序关了 但是后台还在运行
 你关闭之后  在任务管理器 还能不能看到这个进程撒
------解决方案--------------------
线程假死 崩溃了吧
线程里加排除异常处理。最好弄个异常日志显示
------解决方案--------------------
这是个技术活
------解决方案--------------------
用线程,程序没完全退出,在关闭程序前,要先关闭线程或杀死线程!