Freigeben über


Disconnect-CMTrackedObject

Bereinigen Sie nicht verwendete PowerShell-Objekte, um Kontingentverletzungen des SMS-Anbieters zu vermeiden.

Syntax

Disconnect-CMTrackedObject
          [-Force]
          -InputObject <IDisposable[]>
          [-DisableWildcardHandling]
          [-ForceWildcardHandling]
          [-WhatIf]
          [-Confirm]
          [<CommonParameters>]
Disconnect-CMTrackedObject
          [-All]
          [-Force]
          [-DisableWildcardHandling]
          [-ForceWildcardHandling]
          [-WhatIf]
          [-Confirm]
          [<CommonParameters>]

Beschreibung

Wenn Sie Start-CMObjectTracking zum Nachverfolgen von SMS-Anbieterobjekten verwenden, die von der PowerShell-Runtime verwendet werden, verwenden Sie dieses Cmdlet, um diese Ressourcen zu bereinigen, wenn sie nicht mehr benötigt werden.

Wenn Sie Start-CMObjectTracking ausführen, verfolgt die PowerShell-Runtime IResultObject-Objekte nach, die von Configuration Manager-Cmdlets erstellt wurden. Für Objekte, die nicht manuell mit .Dispose()bereinigt werden, können Sie sie mithilfe von Disconnect-CMTrackedObject für ein einzelnes Objekt freigeben.

Sobald ein Objekt freigegeben wurde, kann es nicht mehr wiederverwendet oder über die Objektpipeline an ein anderes Cmdlet übergeben werden.

Stop-CMObjectTracking kann verwendet werden, um die Objektnachverfolgung zu deaktivieren. Zuvor zugeordnete Objekte bleiben aktiv.

Nicht beanspruchte Ressourcen können dazu führen, dass der SMS-Anbieter Kontingentverletzungsfehler verursacht. Diese Kontingentprobleme treten in der Regel auf, wenn sie mit großen Mengen von SMS-Anbieterobjekten oder in Umgebungen mit langer Ausführungsdauer arbeiten.

Hinweis

Dieses Feature ist experimentell und kann in einer zukünftigen Version geändert oder entfernt werden.

Führen Sie Configuration Manager-Cmdlets auf dem Configuration Manager-Standortlaufwerk aus, z. B PS XYZ:\>. . Weitere Informationen finden Sie unter Erste Schritte.

Beispiele

Beispiel 1

Der erste Befehl aktiviert die Objektnachverfolgung. Der zweite Befehl gibt ein einzelnes Objekt zurück, das von der $obj Variablen angegeben wird. Der dritte Befehl gibt alle nachverfolgten Objekte zurück. Der letzte Befehl deaktiviert die Objektnachverfolgung.

Start-CMObjectTracking

# Reclaim a single tracked object
$obj | Disconnect-CMTrackedObject -Force

# Reclaim all tracked objects
Disconnect-CMTrackedObject -All

Stop-CMObjectTracking

Parameter

-All

Fügen Sie diesen Parameter hinzu, um alle nachverfolgten Objekte zurückzugeben.

Typ:SwitchParameter
Position:Named
Standardwert:None
Erforderlich:True
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-Confirm

Fügen Sie diesen Parameter hinzu, um vor der Ausführung des Cmdlets zur Bestätigung aufzufordern.

Typ:SwitchParameter
Aliase:cf
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-DisableWildcardHandling

Dieser Parameter behandelt Wildcardzeichen als Literalzeichenwerte. Sie können es nicht mit ForceWildcardHandling kombinieren.

Typ:SwitchParameter
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-Force

Fügen Sie diesen Parameter hinzu, um den Befehl auszuführen, ohne zur Bestätigung zu fragen.

Typ:SwitchParameter
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-ForceWildcardHandling

Dieser Parameter verarbeitet Wildcardzeichen und kann zu unerwartetem Verhalten führen (nicht empfohlen). Sie können es nicht mit DisableWildcardHandling kombinieren.

Typ:SwitchParameter
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-InputObject

Geben Sie ein beliebiges IResultObject an, das Sie zuvor mit einem Configuration Manager-Cmdlet erstellt haben.

Typ:IDisposable[]
Aliase:InputObjects
Position:Named
Standardwert:None
Erforderlich:True
Pipelineeingabe akzeptieren:True
Platzhalterzeichen akzeptieren:False

-WhatIf

Zeigt, was passieren würde, wenn das Cmdlet ausgeführt wird. Das Cmdlet wird nicht ausgeführt.

Typ:SwitchParameter
Aliase:wi
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

Eingaben

System.IDisposable[]

Ausgaben

System.Object