Dispose objects at most once
TRY THIS RULE ID: csharp-best-practices/dispose-objects-once
Language: C#
Severity: Info
Category: Best Practices
Description From the documentation , the dispose()
method should be called only once. Additional calls do not have any impact other than potential performance overhead.
Non-Compliant Code Examples using System.Net ;
class MyClass {
public static void routine ()
{
Disposable myObject ;
myObject . dispose ();
foo . bar ();
if ( foo ) {
something . dispose ();
} else {
myObject . dispose ();
}
}
}
using System.Net ;
class MyClass {
public static void routine ()
{
Disposable myObject ;
myObject . dispose ();
foo . bar ();
myObject . dispose ();
}
}
using System.Net ;
class MyClass {
public static void routine ()
{
Disposable myObject ;
myObject . dispose ();
foo . bar ();
if ( foo ) {
myObject . dispose ();
}
}
}
Compliant Code Examples class MyClass {
public static void routine ()
{
Disposable myObject ;
myObject . dispose ();
}
}
Seamless integrations. Try Datadog Code Analysis