Process.Kill Metode
Definisi
Penting
Beberapa informasi terkait produk prarilis yang dapat diubah secara signifikan sebelum dirilis. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.
Memaksa penghentian proses yang mendasar.
Overload
Kill() |
Segera menghentikan proses terkait. |
Kill(Boolean) |
Segera menghentikan proses terkait, dan secara opsional proses turunan/turunannya. |
Keterangan
Metode ini Kill
memaksa penghentian proses, sementara CloseMainWindow hanya meminta penghentian.
Ketika proses dengan antarmuka grafis dijalankan, perulangan pesannya dalam keadaan tunggu.
Perulangan pesan dijalankan setiap kali pesan Windows dikirim ke proses oleh sistem operasi.
CloseMainWindow Panggilan mengirimkan permintaan untuk menutup jendela utama, yang, dalam aplikasi yang terbentuk dengan baik, menutup jendela anak dan mencabut semua perulangan pesan yang sedang berjalan untuk aplikasi.
Permintaan untuk keluar dari proses dengan memanggil CloseMainWindow tidak memaksa aplikasi untuk berhenti.
Aplikasi dapat meminta verifikasi pengguna sebelum berhenti, atau dapat menolak untuk berhenti.
Untuk memaksa aplikasi berhenti, gunakan Kill
metode .
Perilaku CloseMainWindow identik dengan pengguna yang menutup jendela utama aplikasi menggunakan menu sistem. Oleh karena itu, permintaan untuk keluar dari proses dengan menutup jendela utama tidak memaksa aplikasi untuk segera berhenti.
Catatan
Metode ini Kill dijalankan secara asinkron.
Setelah memanggil Kill
metode , panggil WaitForExit metode untuk menunggu proses keluar, atau periksa HasExited properti untuk menentukan apakah proses telah keluar.
Catatan
Metode WaitForExit dan HasExited properti tidak mencerminkan status proses turunan.
Ketika Kill(entireProcessTree: true)
digunakan, WaitForExit dan HasExited akan menunjukkan bahwa keluar telah selesai setelah proses yang diberikan keluar, bahkan jika semua turunan belum keluar.
Data yang diedit oleh proses atau sumber daya yang dialokasikan untuk proses dapat hilang jika Anda memanggil Kill
.
Kill
menyebabkan penghentian proses abnormal dan harus digunakan hanya jika perlu.
CloseMainWindow memungkinkan penghentian proses secara teratur dan menutup semua jendela, sehingga lebih disukai untuk aplikasi dengan antarmuka.
Jika CloseMainWindow gagal, Anda dapat menggunakan Kill
untuk mengakhiri proses.
Kill
adalah satu-satunya cara untuk mengakhiri proses yang tidak memiliki antarmuka grafis.
Anda dapat memanggil Kill
dan CloseMainWindow hanya untuk proses yang berjalan di komputer lokal.
Anda tidak dapat menyebabkan proses pada komputer jarak jauh keluar. Anda hanya bisa melihat informasi untuk proses yang berjalan pada komputer jarak jauh.
Kill()
- Sumber:
- Process.Unix.cs
- Sumber:
- Process.Unix.cs
- Sumber:
- Process.Unix.cs
Segera menghentikan proses terkait.
public:
void Kill();
public void Kill ();
[System.Runtime.Versioning.UnsupportedOSPlatform("ios")]
[System.Runtime.Versioning.UnsupportedOSPlatform("tvos")]
public void Kill ();
[System.Runtime.Versioning.UnsupportedOSPlatform("ios")]
[System.Runtime.Versioning.UnsupportedOSPlatform("tvos")]
[System.Runtime.Versioning.SupportedOSPlatform("maccatalyst")]
public void Kill ();
member this.Kill : unit -> unit
[<System.Runtime.Versioning.UnsupportedOSPlatform("ios")>]
[<System.Runtime.Versioning.UnsupportedOSPlatform("tvos")>]
member this.Kill : unit -> unit
[<System.Runtime.Versioning.UnsupportedOSPlatform("ios")>]
[<System.Runtime.Versioning.UnsupportedOSPlatform("tvos")>]
[<System.Runtime.Versioning.SupportedOSPlatform("maccatalyst")>]
member this.Kill : unit -> unit
Public Sub Kill ()
- Atribut
Pengecualian
Proses terkait tidak dapat dihentikan.
Anda mencoba memanggil Kill() proses yang berjalan pada komputer jarak jauh. Metode ini hanya tersedia untuk proses yang berjalan di komputer lokal.
Tidak ada proses yang terkait dengan objek ini Process .
Lihat juga
Berlaku untuk
Kill(Boolean)
- Sumber:
- Process.NonUap.cs
- Sumber:
- Process.NonUap.cs
- Sumber:
- Process.NonUap.cs
Segera menghentikan proses terkait, dan secara opsional proses turunan/turunannya.
public:
void Kill(bool entireProcessTree);
public void Kill (bool entireProcessTree);
[System.Runtime.Versioning.UnsupportedOSPlatform("ios")]
[System.Runtime.Versioning.UnsupportedOSPlatform("tvos")]
public void Kill (bool entireProcessTree);
[System.Runtime.Versioning.UnsupportedOSPlatform("ios")]
[System.Runtime.Versioning.UnsupportedOSPlatform("tvos")]
[System.Runtime.Versioning.SupportedOSPlatform("maccatalyst")]
public void Kill (bool entireProcessTree);
member this.Kill : bool -> unit
[<System.Runtime.Versioning.UnsupportedOSPlatform("ios")>]
[<System.Runtime.Versioning.UnsupportedOSPlatform("tvos")>]
member this.Kill : bool -> unit
[<System.Runtime.Versioning.UnsupportedOSPlatform("ios")>]
[<System.Runtime.Versioning.UnsupportedOSPlatform("tvos")>]
[<System.Runtime.Versioning.SupportedOSPlatform("maccatalyst")>]
member this.Kill : bool -> unit
Public Sub Kill (entireProcessTree As Boolean)
Parameter
- entireProcessTree
- Boolean
true
untuk membunuh proses terkait dan keturunannya; false
untuk membunuh hanya proses terkait.
- Atribut
Pengecualian
Anda mencoba memanggil Kill() proses yang berjalan pada komputer jarak jauh. Metode ini hanya tersedia untuk proses yang berjalan di komputer lokal.
.NET Framework dan .NET Core 3.0 dan versi yang lebih lama saja: Prosesnya telah keluar.
-atau-
Tidak ada proses yang terkait dengan objek ini Process .
-atau-
Proses pemanggilan adalah anggota pohon turunan proses terkait.
Tidak semua proses dalam pohon keturunan proses terkait dapat dihentikan.
Keterangan
Ketika entireProcessTree
diatur ke true
, proses di mana panggilan tidak memiliki izin untuk melihat detail dilewati secara diam-diam oleh proses penghentian turunan karena proses penghentian tidak dapat menentukan apakah proses tersebut adalah keturunan.