Use PodeMutex - mdaneri/Pode GitHub Wiki
external help file: Pode-help.xml Module Name: Pode online version: PodeType: Threading schema: 2.0.0
Places a temporary hold on a Mutex, invokes a ScriptBlock, then releases the Mutex.
Use-PodeMutex [-Name] <String> [-ScriptBlock] <ScriptBlock> [[-Timeout] <Int32>] [-Return]
[-ProgressAction <ActionPreference>] [<CommonParameters>]
Places a temporary hold on a Mutex, invokes a ScriptBlock, then releases the Mutex.
Use-PodeMutex -Name 'SelfMutex' -Timeout 5000 -ScriptBlock {}
$result = Use-PodeMutex -Name 'LocalMutex' -Return -ScriptBlock {}
The Name of the Mutex.
Type: String
Parameter Sets: (All)
Aliases:
Required: True
Position: 1
Default value: None
Accept pipeline input: False
Accept wildcard characters: False{{ Fill ProgressAction Description }}
Type: ActionPreference
Parameter Sets: (All)
Aliases: proga
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: FalseIf supplied, any values from the ScriptBlock will be returned.
Type: SwitchParameter
Parameter Sets: (All)
Aliases:
Required: False
Position: Named
Default value: False
Accept pipeline input: False
Accept wildcard characters: FalseThe ScriptBlock to invoke.
Type: ScriptBlock
Parameter Sets: (All)
Aliases:
Required: True
Position: 2
Default value: None
Accept pipeline input: False
Accept wildcard characters: FalseIf supplied, a number of milliseconds to timeout after if a hold cannot be acquired on the Mutex. (Default: Infinite)
Type: Int32
Parameter Sets: (All)
Aliases:
Required: False
Position: 3
Default value: -1
Accept pipeline input: False
Accept wildcard characters: FalseThis cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see about_CommonParameters.