中术语"托管资源"和"非托管资源"的含义.网它们是如何进入画面的?

推荐答案

术语"非托管资源"通常用于描述not directly under the control of the garbage collector种情况.例如,如果打开与数据库服务器的连接,这将使用服务器上的资源(用于维护连接)以及其他可能的非连接.net资源,如果提供程序不是完全用托管代码编写的.

这就是为什么对于数据库连接之类的东西,建议您这样编写代码:

using (var connection = new SqlConnection("connection_string_here"))
{
    // Code to use connection here
}

因为这样可以确保对Connection对象调用.Dispose(),从而确保清理所有非托管资源.

.net相关问答推荐

.NET MAUI垂直扫描视图(tiktok幻灯片等)

IIS 发布 ASP.NET Core 应用程序而不关闭 IIS 网站

问:在 Blazor WASM 应用程序中存储 api 密钥的最佳方式是什么?

如何将 Assembly.CodeBase 转换为 C# 中的文件系统路径?

如何从控制台应用程序中的 Task.WaitAll() 获取返回值?

如何让 DateTimePicker 显示一个空字符串?

我什么时候应该在 C# 中使用使用块?

将 Topshelf 应用程序安装为 Windows 服务

DateTime.TryParseExact() 拒绝有效格式

覆盖方法上的 C# 可选参数

修剪数组中的所有字符串

.NET 反射的成本是多少?

List 是否保证项目将按照添加的顺序返回?

在 .NET Core 中在 MVC 之外使用 Razor

String.Join 与 StringBuilder:哪个更快?

从 'System.Int32' 到 'System.Nullable`1[[System.Int32, mscorlib]] 的无效转换

将 Dictionary 转换为匿名对象?

DLL 中有什么以及它是如何工作的?

根据条件从列表中删除项目

MVVM 没有意义吗?