社区
C#
帖子详情
为什么点了关闭,线程依然存在。
yishuihepan003
2010-09-28 07:59:38
在下做了一款软件,框架已经基本形成,可以运行,但存在的问题是:
当点击关闭按钮,关闭主窗口后,系统中的进程依然存在,好像并没用释放掉占用的资源。必须启动资源管理器关闭。
请问这是什么原因造成的?应该怎样才能点击关闭按钮,即关闭了软件,又释放掉了资源,关闭系统中的进程。
...全文
238
28
打赏
收藏
为什么点了关闭,线程依然存在。
在下做了一款软件,框架已经基本形成,可以运行,但存在的问题是: 当点击关闭按钮,关闭主窗口后,系统中的进程依然存在,好像并没用释放掉占用的资源。必须启动资源管理器关闭。 请问这是什么原因造成的?应该怎样才能点击关闭按钮,即关闭了软件,又释放掉了资源,关闭系统中的进程。
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
28 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
机器人
2010-10-08
打赏
举报
回复
对了,退出应用的时候应该把所有的子线程都退出。
try
{
workThread.Abort();
}
catch()
{
}
cstester
2010-09-30
打赏
举报
回复
在你program.cs内,Main方法里 实例化的窗体并没有释放资源。在程序想要达到退出效果的窗体里
onFormClosing时间里,定义Application.Exit(); 释放当前应用程序的所有资源。
飞扬人生
2010-09-30
打赏
举报
回复
呵呵,如上所述,kill下,先检测线程存在不,存在Process.GetCurrentProcess().Kill();
yinrongg
2010-09-30
打赏
举报
回复
[Quote=引用 9 楼 wuyq11 的回复:]
Process.GetCurrentProcess().Kill();
Environment.Exit(0)方法,调用此方法,应用程序即强制退出。
application.exit()推出应用程序,并不对后台线程和资源进行强制回收
[/Quote]+1
ihxzz
2010-09-30
打赏
举报
回复
[Quote=引用 4 楼 wuyazhe 的回复:]
Environment.Exit(0);
[/Quote]
这个可以立即退出。
kj289907795
2010-09-30
打赏
举报
回复
是啊
hassss2008
2010-09-30
打赏
举报
回复
应该会关了呀,你可以再看看代码
headsonlkc
2010-09-30
打赏
举报
回复
Thread.Sleep(1000);
System.Environment.Exit(0);
Application.Exit();
guhonglangzi
2010-09-30
打赏
举报
回复
谢谢你们,国庆节快乐。。。
guhonglangzi
2010-09-29
打赏
举报
回复
消化,吸收,学习了。。。
swalp
2010-09-29
打赏
举报
回复
最笨的方法,在窗体关闭事件中写上this.dispose()
xiaojia19850414
2010-09-29
打赏
举报
回复
学习一下。
andy1118
2010-09-29
打赏
举报
回复
[Quote=引用 4 楼 wuyazhe 的回复:]
Environment.Exit(0);
[/Quote]
精辟
tongfeng1981
2010-09-29
打赏
举报
回复
飘过了, 学习了
机器人
2010-09-28
打赏
举报
回复
资源指的是程序运行中分配的内存。
.NET使用的GC回收策略,就算退出程序也不会立即释放资源的。
bourbon1795
2010-09-28
打赏
举报
回复
线程多了就是这样。你等待下,看看会不会自己关掉。
程序没问题的话,线程运行完了都自己释放的。
WWeiLin
2010-09-28
打赏
举报
回复
[Quote=引用 9 楼 wuyq11 的回复:]
Process.GetCurrentProcess().Kill();
Environment.Exit(0)方法,调用此方法,应用程序即强制退出。
application.exit()推出应用程序,并不对后台线程和资源进行强制回收
[/Quote]
呃.. 这里的资源只什么啊!? 不是程序一退,所有资源就释放了!?!?
呃,菜鸟发问,请包涵..
WWeiLin
2010-09-28
打赏
举报
回复
Application.Exit();
不应该啊!? 关闭了程序的前台进程.. 后台进程也随之释放..
学习.. 楼主找到时什么原因后回帖说下啊..
wuyq11
2010-09-28
打赏
举报
回复
Process.GetCurrentProcess().Kill();
Environment.Exit(0)方法,调用此方法,应用程序即强制退出。
application.exit()推出应用程序,并不对后台线程和资源进行强制回收
编程爱好者L
2010-09-28
打赏
举报
回复
占个位子:
http://topic.csdn.net/u/20100928/10/bf791ea2-630a-4d24-9159-9ddbcd436cd5.html
加载更多回复(7)
tomcat通过shutdown
关闭
后,发现tomcat
线程
依然
在,netty绑定的socket
线程
也是
本文详细记录了解决SpringBoot项目中使用Netty进行UDP通信时出现的
线程
泄露问题,通过将
线程
设置为守护
线程
并调整Netty
线程
组配置,最终成功解决Tomcat
关闭
时
线程
未正常终止导致的内存泄漏。
【
线程
关闭
】主
线程
和子
线程
的
关闭
本文探讨了C#多
线程
程序中如何正确
关闭
线程
的方法,避免因
线程
未正常
关闭
导致的问题。介绍了Thread.IsBackground属性的作用,并提供了不同版本的
线程
关闭
示例代码。
java程序
关闭
后
线程
还
存在
吗
本文围绕Java程序
关闭
后
线程
是否
存在
展开探讨。介绍了
线程
是程序基本执行单位,阐述Java
线程
生命周期及状态。指出程序正常退出时JVM会结束非守护
线程
,异常退出则终止所有
线程
。强调了解
线程
管理对编写高效可靠Java程序很重要。
Netty中为什么要优雅
关闭
线程
池?以及异步
关闭
通道的时候什么时候会得到异步结果
关闭
通道?
本文详细解释了Netty中为何要优雅
关闭
线程
池,包括保证数据一致性的重要性,以及异步
关闭
通道的机制。讨论了同步
关闭
与异步
关闭
的区别,以及不
关闭
连接可能导致的内存泄露问题。,
java
线程
池的
关闭
本文介绍了
线程
池的两种
关闭
方式:手动
关闭
和自动
关闭
。手动
关闭
可通过shutdown()或shutdownNow()方法实现,自动
关闭
则依赖于
线程
池的状态和配置。文中详细解释了自动
关闭
的具体场景及实现方法。
C#
111,129
社区成员
642,541
社区内容
发帖
与我相关
我的任务
C#
.NET技术 C#
复制链接
扫一扫
分享
社区描述
.NET技术 C#
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
让您成为最强悍的C#开发者
试试用AI创作助手写篇文章吧
+ 用AI写文章