Process.Kill Yöntem
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
Temel alınan işlemin sonlandırılmasına zorlar.
Aşırı Yüklemeler
Kill() |
İlişkili işlemi hemen durdurur. |
Kill(Boolean) |
İlişkili işlemi ve isteğe bağlı olarak alt/alt işlemlerini hemen durdurur. |
Açıklamalar
Kill
yöntemi yalnızca sonlandırma isteğinde bulunurken CloseMainWindow işlemin sonlandırılmasına zorlar.
Grafik arabirimi olan bir işlem yürütülürken ileti döngüsü bekleme durumundadır.
İleti döngüsü, işletim sistemi tarafından işleme her Windows iletisi gönderildiğinde yürütülür.
Çağrısı CloseMainWindow , iyi biçimlendirilmiş bir uygulamada alt pencereleri kapatan ve uygulama için çalışan tüm ileti döngülerini iptal eden ana pencereyi kapatma isteği gönderir.
Çağrısı CloseMainWindow yaparak işlemden çıkma isteği, uygulamayı çıkmaya zorlamaz.
Uygulama, çıkmadan önce kullanıcı doğrulaması isteyebilir veya bırakmayı reddedebilir.
Uygulamayı çıkmak için zorlamak için yöntemini kullanın Kill
.
davranışı, sistem menüsünü kullanarak uygulamanın ana penceresini kapatan kullanıcının davranışıyla CloseMainWindow aynıdır. Bu nedenle, ana pencereyi kapatarak işlemden çıkma isteği uygulamayı hemen çıkmaya zorlamaz.
Not
Kill yöntemi zaman uyumsuz olarak yürütülür.
yöntemini çağırdıktan Kill
sonra, işlemin çıkmasını beklemek için yöntemini çağırın WaitForExitHasExited veya işlemin çıkıp çıkmadığını belirlemek için özelliğini denetleyin.
Not
WaitForExit yöntemi ve HasExited özelliği alt işlemlerin durumunu yansıtmaz.
kullanıldığında Kill(entireProcessTree: true)
WaitForExit ve HasExited tüm alt öğeler henüz çıkmamış olsa bile verilen işlem çıktıktan sonra çıkışın tamamlandığını gösterir.
çağrısı Kill
yaparsanız işlem veya işleme ayrılan kaynaklar tarafından düzenlenen veriler kaybolabilir.
Kill
anormal bir işlem sonlandırmasına neden olur ve yalnızca gerektiğinde kullanılmalıdır.
CloseMainWindow işlemin düzenli bir şekilde sonlandırılmasına olanak tanır ve tüm pencereleri kapatır, bu nedenle arabirime sahip uygulamalar için tercih edilir.
Başarısız CloseMainWindow olursa, işlemini sonlandırmak için kullanabilirsiniz Kill
.
Kill
, grafik arabirimleri olmayan işlemleri sonlandırmanın tek yoludur.
ve CloseMainWindow öğesini yalnızca yerel bilgisayarda çalışan işlemler için çağırabilirsinizKill
.
Uzak bilgisayarlardaki işlemlerin çıkmalarına neden olamazsınız. Yalnızca uzak bilgisayarlarda çalışan işlemlerin bilgilerini görüntüleyebilirsiniz.
Kill()
- Kaynak:
- Process.Unix.cs
- Kaynak:
- Process.Unix.cs
- Kaynak:
- Process.Unix.cs
İlişkili işlemi hemen durdurur.
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 ()
- Öznitelikler
Özel durumlar
İlişkili işlem sonlandırılamadı.
Uzak bilgisayarda çalışan bir işlemi çağırmaya Kill() çalışıyorsunuz. yöntemi yalnızca yerel bilgisayarda çalışan işlemler için kullanılabilir.
Bu Process nesneyle ilişkilendirilmiş bir işlem yok.
Ayrıca bkz.
Şunlara uygulanır
Kill(Boolean)
- Kaynak:
- Process.NonUap.cs
- Kaynak:
- Process.NonUap.cs
- Kaynak:
- Process.NonUap.cs
İlişkili işlemi ve isteğe bağlı olarak alt/alt işlemlerini hemen durdurur.
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)
Parametreler
- entireProcessTree
- Boolean
true
ilişkili işlemi ve alt öğelerini öldürmek için; false
yalnızca ilişkili işlemi sonlandırmak için.
- Öznitelikler
Özel durumlar
Uzak bilgisayarda çalışan bir işlemi çağırmaya Kill() çalışıyorsunuz. yöntemi yalnızca yerel bilgisayarda çalışan işlemler için kullanılabilir.
yalnızca .NET Framework ve .NET Core 3.0 ve önceki sürümleri: İşlemden zaten çıkıldı.
-veya-
Bu Process nesneyle ilişkilendirilmiş bir işlem yok.
-veya-
Çağıran işlem, ilişkili işlemin alt ağacının bir üyesidir.
İlişkili işlemin alt ağacındaki tüm işlemler sonlandırılamadı.
Açıklamalar
entireProcessTree
olarak ayarlandığındatrue
, çağrısının ayrıntıları görüntüleme izinlerine sahip olmadığı işlemler, sonlandırma işlemi bu işlemlerin alt öğe olup olmadığını belirleyemediğinden alt sonlandırma işlemi tarafından sessizce atlanır.