Wait-Event
Çalışmaya devam etmeden önce belirli bir olayın tetiklenmesine kadar bekler.
Syntax
Wait-Event
[[-SourceIdentifier] <String>]
[-Timeout <Int32>]
[<CommonParameters>]
Description
Cmdlet, Wait-Event
belirli bir olay tetiklenene kadar bir betiğin veya işlevin yürütülmesini askıya alır. Olay algılandığında yürütme sürdürülür. Beklemeyi iptal etmek için CTRL C tuşlarına+basın.
Bu özellik, bir olay için yoklama için bir alternatif sağlar. Ayrıca bir olaya verilen yanıtı iki farklı yolla belirlemenize olanak tanır:
- olay aboneliğinin Action parametresini kullanma
- bir olayın döndürülmesi ve ardından bir eylemle yanıt vermesi bekleniyor
Örnekler
Örnek 1: Sonraki olayı bekleyin
Bu örnek, tetiklenen sonraki olayı bekler.
Wait-Event
Örnek 2: Belirtilen kaynak tanımlayıcıya sahip bir olayı bekleyin
Bu örnek, tetiklenen ve ProcessStarted kaynak tanımlayıcısı olan bir sonraki olayı bekler.
Wait-Event -SourceIdentifier "ProcessStarted"
Örnek 3: Süreölçer geçen olayı bekleyin
Bu örnek, 2000 milisaniye olarak ayarlanmış bir zamanlayıcıda zamanlayıcı olayını beklemek için cmdlet'ini kullanır Wait-Event
.
$Timer = New-Object Timers.Timer
$objectEventArgs = @{
InputObject = $Timer
EventName = 'Elapsed'
SourceIdentifier = 'Timer.Elapsed'
}
Register-ObjectEvent @objectEventArgs
$Timer.Interval = 2000
$Timer.Autoreset = $False
$Timer.Enabled = $True
Wait-Event Timer.Elapsed
ComputerName :
RunspaceId : bb560b14-ff43-48d4-b801-5adc31bbc6fb
EventIdentifier : 1
Sender : System.Timers.Timer
SourceEventArgs : System.Timers.ElapsedEventArgs
SourceArgs : {System.Timers.Timer, System.Timers.ElapsedEventArgs}
SourceIdentifier : Timer.Elapsed
TimeGenerated : 4/23/2020 2:30:37 PM
MessageData :
Örnek 4: Belirtilen zaman aşımının ardından bir olayı bekleyin
Bu örnek, tetiklenen ve ProcessStarted kaynak tanımlayıcısına sahip bir sonraki olay için 90 saniyeye kadar bekler. Belirtilen süre dolarsa bekleme sona erer.
Wait-Event -SourceIdentifier "ProcessStarted" -Timeout 90
Parametreler
-SourceIdentifier
Bu cmdlet'in olayları beklediği kaynak tanımlayıcıyı belirtir.
Varsayılan olarak, Wait-Event
herhangi bir olayı bekler.
Type: | String |
Position: | 0 |
Default value: | None |
Required: | False |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-Timeout
Olayın gerçekleşmesini bekleyen en uzun süreyi saniye Wait-Event
cinsinden belirtir. -1 varsayılanı süresiz olarak bekler. Zamanlama, komutu gönderdiğinizde Wait-Event
başlar.
Belirtilen süre aşılırsa, olay tetiklenmemiş olsa bile bekleme sona erer ve komut istemi geri döner. Hiçbir hata iletisi görüntülenmez.
Type: | Int32 |
Aliases: | TimeoutSec |
Position: | Named |
Default value: | -1 |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Girişler
Çıkışlar
Notlar
Olaylar, olay abonelikleri ve olay kuyruğu yalnızca geçerli oturumda bulunur. Geçerli oturumu kapatırsanız olay kuyruğu atılır ve olay aboneliği iptal edilir.
İlişkili Bağlantılar
PowerShell
Geri Bildirim
https://aka.ms/ContentUserFeedback.
Çok yakında: 2024 boyunca, içerik için geri bildirim mekanizması olarak GitHub Sorunları’nı kullanımdan kaldıracak ve yeni bir geri bildirim sistemiyle değiştireceğiz. Daha fazla bilgi için bkz.Gönderin ve geri bildirimi görüntüleyin