ServiceContainer.Dispose Method

Definition

Disposes this service container.

Overloads

Dispose()

Disposes this service container.

Dispose(Boolean)

Disposes this service container.

Dispose()

Disposes this service container.

public:
 virtual void Dispose();
public void Dispose ();
abstract member Dispose : unit -> unit
override this.Dispose : unit -> unit
Public Sub Dispose ()

Implements

Remarks

Dispose walks all instantiated services within the container and disposes any that implement IDisposable, and clears the service list.

Call Dispose when you are finished using the ServiceContainer. The Dispose method leaves the ServiceContainer in an unusable state. After calling Dispose, you must release all references to the ServiceContainer so the garbage collector can reclaim the memory that the ServiceContainer was occupying. For more information, see Cleaning Up Unmanaged Resources and Implementing a Dispose Method.

Note

Always call Dispose before you release your last reference to the ServiceContainer. Otherwise, the resources it is using will not be freed until the garbage collector calls the ServiceContainer object's Finalize method.

Applies to

Dispose(Boolean)

Disposes this service container.

protected:
 virtual void Dispose(bool disposing);
protected virtual void Dispose (bool disposing);
abstract member Dispose : bool -> unit
override this.Dispose : bool -> unit
Protected Overridable Sub Dispose (disposing As Boolean)

Parameters

disposing
Boolean

true if the ServiceContainer is in the process of being disposed of; otherwise, false.

Remarks

Dispose walks all instantiated services within the container and disposes any that implement IDisposable, and clears the service list.

This method is called by the public Dispose() method and the Finalize method. Dispose() invokes the protected Dispose(Boolean) method with the disposing parameter set to true. Finalize invokes Dispose with disposing set to false.

When the disposing parameter is true, this method releases all resources held by any managed objects that this ServiceContainer references. This method invokes the Dispose() method of each referenced object.

Notes to Inheritors

Dispose can be called multiple times by other objects. When overriding Dispose(Boolean) be careful not to reference objects that have been previously disposed of in an earlier call to Dispose. For more information about how to implement Dispose(Boolean), see Implementing a Dispose Method.

For more information about Dispose and Finalize(), see Cleaning Up Unmanaged Resources and Overriding the Finalize Method.

Applies to