c#System.Net.NetworkCredential
c#System.Net.NetworkCredential,c#,idisposable,networkcredentials,C#,Idisposable,Networkcredentials,System.Net.NetworkCredential没有Dispose方法。正确处理使用此类创建的对象的最佳方法是什么 JamesNT您可以在try的finally部分将对象引用设置为null var myCredential = new NetworkCredential(); try { //Do stuff here } finally { myCredential = null; } 但是,.NET垃圾回收应该在对象引用超出范围时立即将其标记为回收。您可以在尝试的
System.Net.NetworkCredential
没有Dispose
方法。正确处理使用此类创建的对象的最佳方法是什么
JamesNT您可以在try的finally部分将对象引用设置为null
var myCredential = new NetworkCredential();
try
{
//Do stuff here
}
finally
{
myCredential = null;
}
但是,.NET垃圾回收应该在对象引用超出范围时立即将其标记为回收。您可以在尝试的最后一部分将对象引用设置为null
var myCredential = new NetworkCredential();
try
{
//Do stuff here
}
finally
{
myCredential = null;
}
但是,.NET垃圾收集应该在对象引用超出范围后立即将其标记为收集。如果对象未实现
IDisposable
,则在使用完该对象后“处置”该对象的正确方法是让其超出范围
IDisposable
旨在允许对象清理它可能持有的任何非托管资源。如果对象仅包含托管资源,则没有理由处置它;所有东西都将由垃圾收集器清理
发件人:
此接口的主要用途是释放非托管资源。
垃圾回收器会自动释放分配给
当不再使用托管对象时。然而,事实并非如此
可以预测垃圾回收何时发生。此外,,
垃圾收集器不知道非托管资源,例如
窗口句柄,或打开文件和流
使用的处置方法
此接口用于在中显式释放非托管资源
与垃圾收集器连接。对象的使用者可以
当不再需要对象时调用此方法
如果一个对象没有实现
IDisposable
,那么当您使用完它时,正确的“处置”方法是让它超出范围
IDisposable
旨在允许对象清理它可能持有的任何非托管资源。如果对象仅包含托管资源,则没有理由处置它;所有东西都将由垃圾收集器清理
发件人:
此接口的主要用途是释放非托管资源。
垃圾回收器会自动释放分配给
当不再使用托管对象时。然而,事实并非如此
可以预测垃圾回收何时发生。此外,,
垃圾收集器不知道非托管资源,例如
窗口句柄,或打开文件和流
使用的处置方法
此接口用于在中显式释放非托管资源
与垃圾收集器连接。对象的使用者可以
当不再需要对象时调用此方法
如果没有IDisposable。Dispose什么使您认为它实际上需要处理?对于未实现
IDisposable
“Dispose”对您意味着什么?如果没有IDisposable。Dispose什么使您认为它实际上需要处理?Dispose是什么对于那些没有实现IDisposable的对象来说,这意味着什么?事实上,运行时可以在对象最后一次使用后收集对象。通过将其包装在try/finally中,并将null赋值给变量,您将使其无法收集的时间更长。不知道这样做是否会使对象的集合更具确定性。谢谢。。。真有趣!事实上,运行时可以在对象上次使用后收集对象。通过将其包装在try/finally中,并将null赋值给变量,您将使其无法收集的时间更长。不知道这样做是否会使对象的集合更具确定性。谢谢。。。真有趣!这就是为什么我不需要在凌晨1点做编程工作,这就是为什么我不需要在凌晨1点做编程工作。