2.2 托管资源和非托管资源

1.托管资源

2.非托管资源


1.托管资源

托管资源是在堆上分配内存的对象, 比如类对象, 委托和事件
托管资源: 就像在图书馆内阅读, 会将书放到图书馆中

非托管资源: 就像把书借出图书馆, 自己必须主动归还, 否则别人无法使用这本书

2.非托管资源

非托管资源是CLR无法直接管理的资源

1).文件句柄

当程序打开一个文件时, 操作系统返回一个文件句柄, 程序通过这个文件句柄来操作文件

在这里插入图片描述

后果

a.文件被锁定: 他程序无法删除或修改这个文件

b.资源泄漏: 操作系统有最大文件句柄数限制

c.程序崩溃: 如果打开太多文件不关闭, 后续文件操作会失败

2).网络连接

当程序建立网络连接(如HTTP请求、数据库连接、Socket连接), 操作系统会分配网络资源

在这里插入图片描述

后果

a.端口耗尽: 一个程序只能打开有限数量的端口

b.连接泄漏: 服务器端认为连接仍然有效

c.性能下降: 网络资源无法重用

3).操作系统内核对象

a.Mutex(互斥锁)

b.Semaphore(互斥锁)

c.EventWaitHandle(事件)

d.进程
后果

a.内核资源泄漏: 操作系统内核内存被占用

b.对象泄漏: 命名的Mutex可能无法被其他进程正确清理

c.系统性能下降: 内核对象过多影响系统稳定性

4).GDI + 对象

a.GDI + 对象简介

在Windows图形界面编程中使用的图形资源

b.比如

- Bitmap(位图)

- Brush(画刷)

- Pen(画笔)

- Font(字体)

- Graphics(绘图上下文)
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值