gpt4 book ai didi

c# - 哪个类在其构造函数中调用 SuppressFinalize 以致于您的 dispose 调用无用?

转载 作者:太空宇宙 更新时间:2023-11-03 19:26:59 26 4
gpt4 key购买 nike

有些类(例如 DataTable)已经在其构造函数中调用了 SuppressFinalize,因此没有必要在其上调用处置/使用。 (因为dispose是为了早点release但是没有release)

所以,我想知道此类的列表或通过反射找到此类列表的方法?

最佳答案

您的问题做出了无效的假设。调用 SuppressFinalizeDispose 的有效性无关。当您调用 Dispose 方法时,无论是显式调用还是通过 using block ,Dispose 方法仍会执行其中写入的任何内容。

通常,Dispose 将调用 SupressFinalize,但这是因为当您遵循典型的 Dispose 模式时,Dispose 将执行本应从终结器运行的代码。由于代码已经运行,不需要finalization,这是一个比较昂贵的操作,因此Dispose会调用SupressFinalize。

关于c# - 哪个类在其构造函数中调用 SuppressFinalize 以致于您的 dispose 调用无用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7884632/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com