使用的目的是什么? [复制]

2023-12-10

DUPE: C# 中“using”的用法

我看到人们使用以下内容,我想知道它的目的是什么? 是不是对象在被垃圾回收使用后就被销毁了?

例子:

using (Something mySomething = new Something()) {
  mySomething.someProp = "Hey";
}

使用大致翻译为:

Something mySomething = new Something();
try
{
  something.someProp = "Hey";
}
finally
{
  if(mySomething != null)
  {
    mySomething.Dispose();
  }
}

差不多就是这样了。目的是支持确定性处置,这是 C# 所不具备的,因为它是一种垃圾收集语言。使用/处置模式为程序员提供了一种准确指定类型何时清理其资源的方法。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用的目的是什么? [复制] 的相关文章

  • MSBuild 编译解决方案时找不到 SGen

    我在这里查看了其他几个与 SGen 相关的问题 要么他们的答案不适用 要么他们的答案不能为我解决这个问题 我安装了几个 SDK 来解决这个问题 但没有成功 不应更改引用类型 因为这是唯一出现问题的地方 一次建议是将 SGen exe 放入C
  • XNA 窗口调整大小调用 LoadContent

    每当我将 XNA 窗口大小调整到尽可能小的分辨率 0 像素高 时 程序都会再次开始调用 LoadContent 这会导致我的应用程序崩溃 因为我只希望它加载内容一次 我能做什么 有没有办法阻止用户过度调整窗口大小 例如 Java 中的 se
  • ASP.NET Core 应用程序生命周期

    目前是否有关于生命周期的 ASP NET Core 文档 我希望能够在正确的点融入生命周期 它与现有的 ASP NET MVC 5 生命周期相似吗 http www asp azureedge net v 2016 09 01 001 me
  • .Net Standard项目,如何使用System.ServiceModel类

    我已将 PCL 项目转换为 Net Standard 1 5 项目 我已经从 nuget 安装了 System ServiceModel 包 但找不到使用 System ServiceModel 命名空间的方法 任何帮助表示赞赏 安装 Sy
  • NUnit 测试项目的 log4net 配置部分

    我正在使用名为 AssemblyTest nunit 的项目运行 NUnit 该测试调用另一个使用 log4net 程序集的程序集 这是使用 nunit 版本 2 4 3 和 net 2 0 框架 在 TestFixtureSetup 中
  • 在线找到具有两个不同参数的多个匹配绑定

    我在同一个功能文件中写了两行 何时 When user action1 key1 with value1 for atttributeType Value in Filename1 SectionId1 Then abc When user
  • C# 可空相等运算,为什么 null <= null 解析为 false? [复制]

    这个问题在这里已经有答案了 为什么在 NET中会这样 null gt null 解析为 false 但是 null null 解析为真 换句话说 为什么不null gt null相当于null gt null null null 有谁有官方
  • 从调试版本检测发布版本的最佳方法? 。网

    所以我有大约 10 个简短的 css 文件与 mvc 应用程序一起使用 有像 错误 css 登录 css ETC 只是一些非常短的 css 文件 使更新和编辑变得容易 至少对我来说 我想要的是能够优化 if else 分支而不是将其合并到最
  • 颜色变换器功能上的堆栈溢出错误

    我有两种颜色 红色 和 鲑鱼色 我需要动态创建面板以及面板背景颜色 这些颜色必须介于两种颜色之间 红色 public Color x y protected void Page Load object sender EventArgs e
  • Swashbuckle 在 ASP.NET Core 中失败并出现 NotSupportedException 异常

    我跟着这个关于如何在我的 asp net core 2 2 项目中添加 swashbuckle 当我运行该项目时 我收到以下错误 处理请求时发生未处理的异常 NotSupportedException HTTP 方法 GET 和路径 id
  • NUnit 与 xUnit

    两者有什么区别NUnit http www nunit org and xUnit net https xunit net 开发其中两个而不是仅一个有什么意义 我读到 xUnit 是由 NUnit 的发明者开发的 xUnit net 是 N
  • “指定的登录会话不存在。它可能已被终止。”尝试使用 WindowsIdentity.Impersonate 复制文件时

    我正在尝试将文件从共享点复制到 unc 路径 我正在使用以下代码 var id new WindowsIdentity email protected cdn cgi l email protection var p new Windows
  • ELMAH 将其数据保存在哪里?

    我刚刚安装了 ELMAH MVC 更多信息here http nuget org packages Elmah MVC 并且想知道其数据保存在哪里 我读到您可以选择设置数据库进行存储 但似乎默认安装使用 内存中 它是如何工作的 如果我回收应
  • Microsoft Teams 中私人消息的传入 Webhook

    我可以从 C 应用程序或 PS 脚本创建传入 Webhook 将 JSON 消息发送到 MSFT 文档所解释的通道 但是 我想使用传入的 webhook 将 JSON 消息从我的应用程序发送到用户 作为私人消息 就像 Slack 允许的那样
  • C# 创建包含多个文件的 ZIP 存档

    我正在尝试创建包含多个文本文件的 ZIP 存档 如下所示 Dictionary
  • WebClient读取错误页面的内容

    我有一个加载页面内容的应用程序 我使用 WebClient 类 即使服务器返回 404 500 等错误 我也需要检索内容 我需要这样的东西 WebClient wc new WebClient string pageContent try
  • 如何将字节块读入结构体

    我有一个需要处理的资源文件 它包含一组文件 首先 资源文件列出了其中包含的所有文件 以及一些其他数据 例如在此结构中 struct FileEntry byte Value1 char Filename 12 byte Value2 byt
  • 生成 .tail IL 指令的简单 F# 代码是什么?

    我想看看 tailIL 指令 但我一直在编写的使用尾部调用的简单递归函数显然已优化为循环 我实际上是在猜测这一点 因为我不完全确定反射器中的循环是什么样的 我绝对没有看到任何 tail不过操作码 我在项目的属性中检查了 生成尾部调用 我还尝
  • 抽象类或接口。哪种方式是正确的?

    有两种方法可以选择抽象类或接口 微软解决方案和Oracle解决方案 微软 设计指南 请使用抽象 在 Visual Basic 中为 MustInherit 类而不是接口来将协定与实现分离 http msdn microsoft com en
  • 为什么WCF中不允许方法重载?

    假设这是一个ServiceContract ServiceContract public interface MyService OperationContract int Sum int x int y OperationContract

随机推荐

  • 基于浏览器语言的 404 页面与 mod_rewrite 如何

    我试图通过评估客户端 HTTP Accept Language 标头来纯粹基于 Apache mod rewrite 规则生成语言相关的 404 还有其他错误 页面 我已经设法使用以下规则显示正确的页面 默认英文 RewriteEngine
  • JOptionPane.showMessageDialog 截断 JTextArea 消息

    我的 Java GUI 应用程序需要快速向最终用户显示一些文本 因此JOptionPane实用方法似乎很合适 此外 文本必须是可选择的 用于复制和粘贴 并且可能有点长 约 100 个单词 因此它必须很好地适合窗口 屏幕外没有文本 理想情况下
  • 将自定义属性添加到客户端实体类

    我需要向实体框架类添加自定义属性 但是当我这样做时 我收到 为类型 XXX 指定的属性名称 XXX 无效 错误 我可以为该属性提供一些属性 以便它被忽略并且不映射到任何东西吗 编辑 如果我添加自定义属性 按照下面 Martin 的示例 则以
  • Internet Explorer 错误:SCRIPT5009:ArrayBuffer 未定义

    我在 Internet Explorer 9 中收到错误 但在其他浏览器上不会出现该错误 它是 SCRIPT5009 ArrayBuffer 未定义 我的代码如下 var rawLength raw length var array new
  • 使用 REST 和 C# 实现 Google 音译 API,面临 unicode 和解析问题

    我一直在尝试使用 RESTful 方法来使用 Google Transliterate API 因为通过服务器端语言 此处为 C 很容易做到这一点 所以 我遇到了这种 URL 格式 它返回以下格式的 JSON ew bharat hws e
  • 如何自动停止 jQuery 验证表单验证?

    我有一个文本框 在其中创建了一个 onblur 脚本 该脚本接受输入并将其转换为日期 我正在使用 jQuery validate plugin 来验证输入 但问题是用户的输入通常在我解析之后才有效 这使得 jQuery 验证所做的自动验证既
  • Graphhopper 返回“未找到”

    我正在测试 graphhopper 有几天了 但是有一个奇怪的问题 当位置对于下一个街道 graphhopper 来说太远时 返回错误 未找到 奇怪的是它可以在 graphhopper demo server 上运行 我尝试了阿尔卑斯山 欧
  • PHP读取受保护的文件

    我在子域 a 上有一个 xml 文件 在子域 b 上有一个 php 脚本 我想通过 PHP 读取并使用 XML 文件中的数据 这就是问题所在 该文件使用 HTTP 身份验证进行保护 如何让PHP登录并读取文件内容 The 网址包装器支持表单
  • 配置 ruamel.yaml 以允许重复键

    我正在尝试使用ruamel yaml用于处理包含重复键的 Yaml 文档的库 在这种情况下 重复的键恰好是合并键 lt lt 这是 yaml 文件 dupe yml foo ref1 a 1 bar ref2 b 2 baz lt lt r
  • 未捕获的引用错误:jQuery 未定义[重复]

    这个问题在这里已经有答案了 我在我的网站上实现了一些 JavaScript 但我不断收到以下错误消息 未捕获的 ReferenceError jQuery 未定义 and 未捕获的语法错误 意外的标记 这是我在 header php 中使用
  • 在 Linux 上的 Eclipse RCP 应用程序中加载本机库

    我有一个 Eclipse RCP 应用程序 它通过 JNI 使用一些本机库 这些是动态链接到彼此的共享库 在 Windows 上我把这些库 如 dll文件 旁边的 RCP 启动器可执行文件 exe 文件并通过加载它们System load
  • 如何使用打字稿在第三方类上定义方法?

    我正在尝试扩展第 3 方课程 但无法让打字稿发挥良好作用 基本上 我不能在新方法中使用类中已定义的任何现有方法 解决方法是重新定义现有方法extensions ts 见下文 但必须有更好的方法 第三方index d ts export as
  • 为什么转置日期格式为 dd/mm/yy 的数组会将某些日期更改为 mm/dd/yy 格式?

    行为 当我转置包含日期的一维数组以便将它们完整地打印到一张纸上时 某些日期会从dd mm yy to mm dd yyyy 特别是当该月的某一天 小于或等于12 例如January 2 2016 02 01 16 or May 11 201
  • 如何在服务器无法访问存储库的情况下从 git 存储库进行部署?

    我在 BitBucket git 存储库中有一个 PHP 项目 我在一个名为 开发 的分支中工作以进行小修复 或者在临时功能分支中工作 当我准备好部署时 我将这些分支合并到 master 中 我想让部署到我的实时站点变得如此简单 合并到 m
  • 为什么 javac“-source”标志不起作用?

    我正在测试javac source标志 我对它应该如何工作有点困惑 请参阅此代码作为示例 这是一个不兼容Java5代码的方法isEmpty 在该版本的 JDK 中没有为 String 定义 public class TestJavac pu
  • 在 beforeunload 事件处理程序中停止页面卸载

    在用户导航页面之前 代码会检查他是否编辑了某些表单字段 如果他这样做了 我会显示一个模式窗口Yes and No纽扣 如果他单击 否 模式应关闭并且用户仍保留在该窗口上 如果是 保存更改并卸载 window bind beforeunloa
  • 在我的 Mac 上的 gdb 7.6 上运行 make 时出错

    我在运行 make for gdb 时遇到以下错误 这是在我的 Mac 上运行配置后的结果 该 Mac 运行 OS X 10 8 5 和 i7 内部处理器 海湾合作委员会版本是 gcc v Configured with prefix Ap
  • 如何在MySQL 5 .7中实现CTE功能?

    我有一个 USERSEARCH 表 应该用于快速搜索用户的子字符串 此功能用于在有人输入用户名或姓名时进行自动完成搜索 但是 我感兴趣的查询只会显示搜索者关注的用户子集的匹配项 这可以在 USERRELATIONSHIP 表中找到 USER
  • Spring @Autowired(required = true) 为 null [重复]

    这个问题在这里已经有答案了 我有一个带有 JSF 2 结束 Spring 4 3 的网络模块 在我使用的支持豆中 Autowired用于 JAR 服务的 DI 在 EAR 模块中有 WAR JAR 和 ServiceSpring 和带有 S
  • 使用的目的是什么? [复制]

    这个问题在这里已经有答案了 DUPE C 中 using 的用法 我看到人们使用以下内容 我想知道它的目的是什么 是不是对象在被垃圾回收使用后就被销毁了 例子 using Something mySomething new Somethin