Wait-Event
Menunggu hingga peristiwa tertentu dinaikkan sebelum terus berjalan.
Sintaks
Wait-Event
[[-SourceIdentifier] <String>]
[-Timeout <Int32>]
[<CommonParameters>]
Deskripsi
Wait-Event
Cmdlet menangguhkan eksekusi skrip atau fungsi hingga peristiwa tertentu dinaikkan. Eksekusi dilanjutkan saat peristiwa terdeteksi. Untuk membatalkan tunggu, tekan CTRL+C.
Fitur ini menyediakan alternatif untuk polling untuk suatu peristiwa. Ini juga memungkinkan Anda menentukan respons terhadap suatu peristiwa dengan dua cara berbeda:
- menggunakan parameter Tindakan langganan peristiwa
- menunggu peristiwa kembali lalu merespons dengan tindakan
Contoh
Contoh 1: Tunggu peristiwa berikutnya
Contoh ini menunggu peristiwa berikutnya yang dinaikkan.
Wait-Event
Contoh 2: Tunggu peristiwa dengan pengidentifikasi sumber tertentu
Contoh ini menunggu peristiwa berikutnya yang dinaikkan dan yang memiliki pengidentifikasi sumber ProcessStarted.
Wait-Event -SourceIdentifier "ProcessStarted"
Contoh 3: Tunggu peristiwa yang berlalu timer
Contoh ini menggunakan Wait-Event
cmdlet untuk menunggu peristiwa timer pada timer yang diatur selama 2000 milidetik.
$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 :
Contoh 4: Tunggu peristiwa setelah batas waktu yang ditentukan
Contoh ini menunggu hingga 90 detik untuk peristiwa berikutnya yang dinaikkan dan yang memiliki pengidentifikasi sumber ProcessStarted. Jika waktu yang ditentukan kedaluwarsa, tunggu berakhir.
Wait-Event -SourceIdentifier "ProcessStarted" -Timeout 90
Parameter
-SourceIdentifier
Menentukan pengidentifikasi sumber bahwa cmdlet ini menunggu peristiwa.
Secara default, Wait-Event
menunggu peristiwa apa pun.
Type: | String |
Position: | 0 |
Default value: | None |
Required: | False |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-Timeout
Menentukan waktu maksimum, dalam detik, yang Wait-Event
menunggu peristiwa terjadi. Default, -1, menunggu tanpa batas waktu. Waktu dimulai saat Anda mengirimkan Wait-Event
perintah.
Jika waktu yang ditentukan terlampaui, tunggu berakhir dan perintah kembali, bahkan jika peristiwa belum dinaikkan. Tidak ada pesan kesalahan yang ditampilkan.
Type: | Int32 |
Aliases: | TimeoutSec |
Position: | Named |
Default value: | -1 |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Input
Output
Catatan
Peristiwa, langganan peristiwa, dan antrean peristiwa hanya ada di sesi saat ini. Jika Anda menutup sesi saat ini, antrean peristiwa akan dibuang dan langganan acara dibatalkan.
Link Terkait
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk