- 主题:关于dispose释放资源的问题
比如说一个网络连接或者数据库连接,通常都会推荐使用using或者调用Dispose()方法来释放资源,
我的问题是,如果是在调试程序中,打开了连接,然后中止调试, 又或者是程序在执行过程中崩溃退出. 那这个连接资源是会自动被释放呢? 还是被占用掉了?
--
FROM 60.180.39.*
那是否意味着,disposable占用的资源在程序退出时还是会被归还的?
主要时联想起以前使用电脑的一些场景,电脑很卡顿,关闭程序也无济于事,最后得重启电脑才好.不知道跟这里的资源释放有一定联系.
【 在 leadu 的大作中提到: 】
: 本地由os释放,远程超时释放
--
FROM 115.221.137.*
那一个数据库的连接或者通信设备的连接,怎么知道它是托管或者非托管资源呢?
【 在 mingtong (。。。) 的大作中提到: 】
: using释放托管资源,后者是手动释放非托管资源。
: 托管资源在crash(进程)退出后会由.NET释放,非托管资源由操作系统负责。
: 【 在 ustcBoy 的大作中提到: 】
: : 比如说一个网络连接或者数据库连接,通常都会推荐使用using或者调用Dispose()方法来释放资源,
--
FROM 112.14.76.*
那这个意思是不是说,程序崩溃之后,之前所引用的非托管资源的释放与否,在于该资源提供侧和系统调度的处理呢?
【 在 keygen (失落灵魂之囚) 的大作中提到: 】
: 这么说吧,只有内存是managed的
: 【 在 ustcBoy (ustcBoy) 的大作中提到: 】
: : 那一个数据库的连接或者通信设备的连接,怎么知道它是托管或者非托管资源呢?
:
--
FROM 112.14.76.*
这个有办法监视吗
【 在 keygen (失落灵魂之囚) 的大作中提到: 】
: 进程崩溃后,所有它使用的资源都会被操作系统回收
:
: 【 在 ustcBoy (ustcBoy) 的大作中提到: 】
: : 那这个意思是不是说,程序崩溃之后,之前所引用的非托管资源的释放与否,在于该资源提供侧和系统调度的处理呢?
--
FROM 223.104.162.*