我自己写了个程序,开了4个端口用socket方法接收UDP数据,每个端口接收数据都单独用一个线程,关闭窗体里我把线程都关闭了,但是socket却想不到什么好的办法关闭,这样导致窗体关闭后程序还在运行,有没有什么办法将活动的Socket都关闭呢
我是在接收数据的线程中建的socket,
While(true)
{
socket1.receivefrom(......)
}
因为要一直接收数据,在这里不好关闭socket,
我将socket1.close()设在form.closing()事件里,但在这里却关闭不了socket,挺烦人的
C# 为什么我关闭窗体后,端口却还开着,程序还在进程中
答案:5 悬赏:50 手机版
解决时间 2021-03-02 21:52
- 提问者网友:伴风望海
- 2021-03-02 18:51
最佳答案
- 五星知识达人网友:梦中风几里
- 2021-03-02 19:13
Environment.Exit(0);
先把资源释放,然后关闭
这个基本上能解决大多数关闭问题
我的方法你用了吗?你用下吧
肯定能关闭的
先把资源释放,然后关闭
这个基本上能解决大多数关闭问题
我的方法你用了吗?你用下吧
肯定能关闭的
全部回答
- 1楼网友:骨子里都是戏
- 2021-03-03 00:30
1 如果你是有专门的推出按钮,可以写按钮代码:application.exit();
2 如果我点击右上角关闭的那个×,可以在form事件里面找到,formclosed 事件,可上述代码。
如果不行 application.abort();
- 2楼网友:行雁书
- 2021-03-02 23:07
窗体关闭的时候,设定进程也关闭啊
System.Windows.Forms.Application.Exit();
- 3楼网友:摆渡翁
- 2021-03-02 21:32
关闭的方法写的不对。
Application.Exit();
这样就可以了。我也碰到之前跟你类似的问题。这样就解决了
- 4楼网友:等灯
- 2021-03-02 20:10
this.Owner.Close(); //这个可有可无,可以把获取当前界面的所有界面都关闭
this.Close();
Application.Exit();
差不多下面2个就可以了吧,一般只要全部窗口和线程都关闭了,程序就不会运行了
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯