腾讯云
开发者社区
文档
建议反馈
控制台
首页
学习
活动
专区
工具
TVP
最新优惠活动
文章/答案/技术大牛
搜索
搜索
关闭
发布
登录/注册
精选内容/技术社群/优惠产品,
尽在小程序
立即前往
文章
问答
(9999+)
视频
沙龙
1
回答
C#
-
在
终结
器
中
回收
资源
的
缺点
c#
、
garbage-collection
、
finalizer
、
recycle
正如标题所述:
在
包含对象
的
终结
器
中
回收
资源
(如大型数组)有什么
缺点
吗?到目前为止,它工作得很好,但由于
终结
器
可能有点时髦,很难调试,所以我决定在这里问一下。用例是一个多边形类,它只表示一个点
的
列表。我
的
应用程序大量使用具有几千个点
的
大型多边形-分配这些数组通常并不便宜。不幸
的
是,dispose模式是不可能
的
,因为它们被传递,并且
浏览 37
提问于2020-10-05
得票数 0
回答已采纳
1
回答
IDisposable接口和实现解构方法
c#
、
idisposable
我正在学习
C#
理论,我对理论
的
某些部分还不是很清楚。当我必须在类
中
调用析构函数方法时,我必须实现IDisposable接口?我
的
意思是实现接口与析构函数严格相关?
浏览 0
提问于2012-02-16
得票数 0
回答已采纳
2
回答
C#
我们已经有了
终结
器
,为什么还要处理呢?
c#
、
garbage-collection
、
finalizer
我一直听到关于
在
finalizer和Dispose()方法中使用代码来处理非托管
资源
的
建议。我不明白
的
是,由于
终结
器
是
在
GC发生时调用
的
,所以从技术上讲,我们可以假设它总是被调用。
浏览 1
提问于2013-11-11
得票数 3
1
回答
.NET垃圾收集
器
.net
、
garbage-collection
它是用link 编写
的
有人能帮我澄清一下吗?3)我们
的
自定义类,比如类A{}类A obj会不会去finalize,考虑到这两种情况(显式/隐式析构函数)谢谢
浏览 0
提问于2010-07-01
得票数 2
2
回答
C#
/CLI:如果在析构函数中使用Dispose(),则不调用析构函数
c#
、
c++
、
command-line-interface
、
destructor
、
dispose
我有一个名为"CTransferManaged“
的
C++/CLI类,它实现了
终结
器
和析构函数:{{} 这个类包装了一个名为"CTransfer“
的
C#
类,其中包含一个CTransferManaged类型
的
对象如果这个类
的</em
浏览 2
提问于2013-06-06
得票数 5
5
回答
Dispose()方法
中
的
GC.SuppressFinalize(this)
的
用途是什么?
c#
、
.net
、
garbage-collection
、
idisposable
、
suppressfinalize
GC.SuppressFinalize(this);}这将发挥重要作用
的
用例场景是什么?
浏览 6
提问于2010-06-14
得票数 32
回答已采纳
4
回答
如何在
C#
的
Dispose()方法
中
处理托管
资源
?
c#
、
.net
、
garbage-collection
、
dispose
、
resources
我知道Dispose()是针对非托管
资源
的
,应该在不再需要该
资源
时将其释放,而不必等待垃圾收集
器
完成对象。但是,
在
释放对象时,它会抑制垃圾收集
器
(GC.SuppressFinalize(this);在下面的代码
中
)
的
终结
化。这意味着如果对象包含托管
资源
,我们也必须注意这一点,因为垃圾收集
器
不会清理它。在下面的示例代码
中
(来自MSDN),"Component“是一个托管<e
浏览 0
提问于2010-02-18
得票数 12
回答已采纳
6
回答
为什么
终结
器
总是被调用?
c#
、
.net
但是很多文章都说finalizer是非desterministic
的
。
浏览 0
提问于2010-01-18
得票数 1
4
回答
在
C#
对象上调用C++/CLI删除
c#
、
c++-cli
我正在将一些代码从C++/CLI转换到
C#
。其中一个对象
在
C++/CLI版本中有析构函数。其他一些C++/CLI代码
在
使用此对象后会调用"delete“。我需要在这个对象
的
C#
版本
中
实现哪个方法,才能让那些“delete”继续起作用(IDisposable.Dispose、
终结
器
或其他我遗漏
的
东西)?
浏览 2
提问于2012-04-20
得票数 11
回答已采纳
5
回答
终结
器
是用来做什么
的
?
c#
、
.net
、
vb.net
、
finalizer
我已经用.NET编程四年了(主要是
C#
),我广泛使用IDiposable,但我还没有找到一个
终结
者
的
需求。
终结
器
是用来做什么
的
?
浏览 2
提问于2009-04-20
得票数 9
回答已采纳
1
回答
垃圾
回收
器
不以相同方法处理Excel实例
c#
、
excel
、
garbage-collection
、
excel-interop
我有一个使用Excel-Interop
的
程序。现在,如果我调用Application.Quit-Method,它不会关闭Excel进程,必须首先运行垃圾收集
器
。但是由于某些原因,垃圾收集
器
只有
在
与使用Excel
的
方法不同
的
方法
中
调用时才能正常工作。 为什么会这样呢?
浏览 12
提问于2020-03-19
得票数 0
1
回答
为什么
在
TCP客户端关闭后强制垃圾收集?
c#
、
.net
、
sockets
、
tcp
我正在处理一些可能早于.NET 2
的
遗留代码,库本身是我们
的
服务器使用
的
自定义异步TCP通信层。有一个从System.Net.Sockets.TcpClient继承
的
类及其周围
的
整个类层次结构,实现了dispose模式和
终结
器
(后者可能不需要)。我
的
问题是关于
在
处理TCP客户端断开连接事件
的
方法中发现
的
可疑代码行: // Hack to ensure that client ha
浏览 1
提问于2015-12-09
得票数 1
3
回答
GC、Finalize()和Dispose之间有什么关系?
c#
、
.net
GC是用于托管对象
的
,而Finalize是用于非托管对象
的
,这就是我一直
在
阅读
的
内容。Dispose是隐式
的
,Finalize是显式
的
,这是我一直
在
阅读
的
内容。谁能给我举一个模块
的
例子,在这个模块
中
,这三件事都是出于不同
的
原因而使用
的
?
浏览 4
提问于2010-02-27
得票数 24
回答已采纳
2
回答
什么是非关键
资源
的
例子?
java
、
language-agnostic
、
resources
的
一条引文指出:
终结
器
的
第二种合法使用涉及到与本机对等点
的
对象。本机对等体是普通对象通过本机方法委托给
的
本机对象。因为本地对等点不是一个正常
的
对象,所以垃圾收集
器
不知道它,并且
在
回收
它
的
Java对等点时无法
回收
它。
终结
器
是执行此任务
的
适当工具,假设本机对等方不包含关键
资源
()。我以前没有做过C++,虽然我模
浏览 1
提问于2011-11-06
得票数 4
回答已采纳
4
回答
GC如何在.NET
的
静态成员
中
收集
资源
?
c#
、
.net
、
garbage-collection
我有一段这样
的
代码:{ static int var=0; { }这可能不是一个好
的
做法,但我只想用这个例子来问解构函数和GC是如何工作
的
。我
的
问题是:~Program()会在不确定<e
浏览 0
提问于2010-04-01
得票数 3
回答已采纳
2
回答
与
在
C#
类
终结
器
中
执行操作相比,使用IDisposable
的
优势
c#
、
.net
有很多关于实现和使用IDisposable/Dispose
的
“模式”was
的
讨论,但是与
在
C#
类
终结
器
中
拥有所有清理代码相比,它有什么优势呢?当然,其他类可以
在
类实例被垃圾
回收
和调用
终结
器
之前显式调用Dispose。它是唯一
的
一个吗?
浏览 0
提问于2012-03-26
得票数 2
回答已采纳
2
回答
与
C#
中
的
Class_Terminate()等效
c#
在
VB6.0
中
,对于一个类,我有以下代码: Call MethodFoo(False)End Sub 现在我需要在
C#
中
做同样
的
事情,我不太担心这两个空对象,但我需要那个被调用
的
可恶
的
MethodFoo()。
在
它
的
C#
等价类
中
添加
终结</e
浏览 0
提问于2012-11-29
得票数 0
1
回答
C++/CLI析构函数
c#
、
c++-cli
、
destructor
我有一个混合语言(
C#
,C++/CLI,原生C++)
的
应用程序,我通过
在
几个对象
的
构造函数和析构函数中放置日志语句来跟踪一些对象
的
生命周期。我有一个
C#
对象,其中包含对C++/CLI对象
的
引用。MyC++Class() { loggerInt1(LOGDEBUG, "destroyed MyC++Class object %d", (int)this->GetHashCode()); 问题是,当
C#
对象被垃
浏览 0
提问于2014-02-03
得票数 3
1
回答
为什么我们不在析构函数
中
释放非托管
资源
呢?
c++-cli
根据这篇文章, on MSDN,我们应该释放
终结
器
中
的
非托管
资源
和析构函数
中
的
托管
资源
。A() { // ...}; 为什么不把它全部放在析构函数
中
,然后去掉
终结
器
呢是不是因为垃圾收集
器
仍有可能不确定地清理对象?
浏览 0
提问于2011-08-22
得票数 0
回答已采纳
6
回答
c#
Dispose模式
c#
、
idisposable
下面是一个典型
的
IDispose实现。我不明白
的
是析构函数?如果你
的
类
的
用户忘记调用Dispose,你不会有
资源
泄漏吗,因为析构函数不会调用r1.Dispose()?
浏览 0
提问于2013-02-14
得票数 0
点击加载更多
扫码
添加站长 进交流群
领取专属
10元无门槛券
手把手带您无忧上云
相关
资讯
资源管理器中的文件名的颜色在表达什么意思?
Win11 学院:在25300(Dev)中启用文件资源管理器图片的隐藏功能
微软开始在Windows 10 19H1中测试文件资源管理器的最新改进
2020年及以后的10种很受欢迎的编程语言
当前最流行的十大编程语言都有哪些用途和优缺点?
热门
标签
更多标签
云服务器
即时通信 IM
ICP备案
对象存储
实时音视频
活动推荐
运营活动
广告
关闭
领券