Nyelv

Process.Kill Metódus

Definíció

Kényszeríti a mögöttes folyamat leállítását.

Túlterhelések

Név Description
Kill()

Azonnal leállítja a társított folyamatot.

Kill(Boolean)

Azonnal leállítja a társított folyamatot, és opcionálisan a gyermek-/leszármazott folyamatokat is.

Megjegyzések

A Kill metódus kényszeríti a folyamat leállítását, míg CloseMainWindow csak a befejezést kéri. Grafikus felülettel rendelkező folyamat végrehajtásakor az üzenethurok várakozási állapotban van. Az üzenethurok minden alkalommal végrehajtja, amikor az operációs rendszer Windows üzenetet küld a folyamatnak. A hívás CloseMainWindow kérést küld a főablak bezárására, amely egy jól formázott alkalmazásban bezárja a gyermekablakokat, és visszavonja az alkalmazás összes futó üzenethurkját. A hívással CloseMainWindow történő kilépésre irányuló kérés nem kényszeríti az alkalmazást a kilépésre. Az alkalmazás kérheti a felhasználó ellenőrzését a kilépés előtt, vagy megtagadhatja a kilépést. Az alkalmazás kilépésre kényszerítéséhez használja a metódust Kill .

A viselkedése megegyezik az alkalmazás főablakát a rendszermenüvel bezáró felhasználóéval CloseMainWindow . Ezért a főablak bezárásával a folyamatból való kilépésre irányuló kérés nem kényszeríti az alkalmazás azonnali kilépését.

Note

A Kill metódus aszinkron módon fut. A metódus meghívása Kill után hívja meg a WaitForExit metódust, hogy várja meg a folyamat kilépését, vagy ellenőrizze a HasExited tulajdonságot annak megállapításához, hogy a folyamat kilépett-e.

Note

A WaitForExit metódus és a HasExited tulajdonság nem tükrözi a leszármazott folyamatok állapotát. Mikor Kill(entireProcessTree: true) van használatban, és WaitForExit azt jelzi, HasExited hogy a kilépés befejeződött a megadott folyamatkijáratok után, még akkor is, ha az összes leszármazott még nem lépett ki.

A folyamat vagy a folyamat számára lefoglalt erőforrások által szerkesztett adatok elveszhetnek, ha meghívja Kill. Kill rendellenes folyamatvégződést okoz, és csak akkor szabad használni, ha szükséges. CloseMainWindow lehetővé teszi a folyamat rendezett leállítását, és bezárja az összes ablakot, így a felülettel rendelkező alkalmazások esetében előnyösebb. Ha CloseMainWindow nem sikerül, a folyamat leállításához használhatja Kill . Kill az egyetlen módja annak, hogy olyan folyamatokat állítsanak le, amelyek nem rendelkeznek grafikus felülettel.

Csak a helyi számítógépen futó folyamatok hívhatók meg KillCloseMainWindow . A távoli számítógépeken lévő folyamatok nem hagyhatók ki. Csak a távoli számítógépeken futó folyamatok adatait tekintheti meg.

Kill()

Forrás:
Process.Unix.cs
Forrás:
Process.Unix.cs
Forrás:
Process.Unix.cs
Forrás:
Process.Unix.cs
Forrás:
Process.Unix.cs

Azonnal leállítja a társított folyamatot.

public:
 void Kill();
[System.Runtime.Versioning.SupportedOSPlatform("maccatalyst")]
[System.Runtime.Versioning.UnsupportedOSPlatform("ios")]
[System.Runtime.Versioning.UnsupportedOSPlatform("tvos")]
public void Kill();
public void Kill();
[System.Runtime.Versioning.UnsupportedOSPlatform("ios")]
[System.Runtime.Versioning.UnsupportedOSPlatform("tvos")]
public void Kill();
[<System.Runtime.Versioning.SupportedOSPlatform("maccatalyst")>]
[<System.Runtime.Versioning.UnsupportedOSPlatform("ios")>]
[<System.Runtime.Versioning.UnsupportedOSPlatform("tvos")>]
member this.Kill : unit -> unit
member this.Kill : unit -> unit
[<System.Runtime.Versioning.UnsupportedOSPlatform("ios")>]
[<System.Runtime.Versioning.UnsupportedOSPlatform("tvos")>]
member this.Kill : unit -> unit
Public Sub Kill ()
Attribútumok

Kivételek

A társított folyamat nem állítható le.

Egy távoli számítógépen futó folyamatot próbál meghívni Kill() . A metódus csak a helyi számítógépen futó folyamatokhoz érhető el.

Ehhez az objektumhoz Process nincs folyamat társítva.

Lásd még

A következőre érvényes:

Kill(Boolean)

Forrás:
Process.NonUap.cs
Forrás:
Process.NonUap.cs
Forrás:
Process.NonUap.cs
Forrás:
Process.NonUap.cs
Forrás:
Process.NonUap.cs

Azonnal leállítja a társított folyamatot, és opcionálisan a gyermek-/leszármazott folyamatokat is.

public:
 void Kill(bool entireProcessTree);
[System.Runtime.Versioning.SupportedOSPlatform("maccatalyst")]
[System.Runtime.Versioning.UnsupportedOSPlatform("ios")]
[System.Runtime.Versioning.UnsupportedOSPlatform("tvos")]
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.SupportedOSPlatform("maccatalyst")>]
[<System.Runtime.Versioning.UnsupportedOSPlatform("ios")>]
[<System.Runtime.Versioning.UnsupportedOSPlatform("tvos")>]
member this.Kill : bool -> unit
member this.Kill : bool -> unit
[<System.Runtime.Versioning.UnsupportedOSPlatform("ios")>]
[<System.Runtime.Versioning.UnsupportedOSPlatform("tvos")>]
member this.Kill : bool -> unit
Public Sub Kill (entireProcessTree As Boolean)

Paraméterek

entireProcessTree
Boolean

true a kapcsolódó folyamat és leszármazottai megölése; false hogy csak a kapcsolódó folyamatot ölje meg.

Attribútumok

Kivételek

A társított folyamat nem állítható le.

-vagy-

A folyamat leáll.

Egy távoli számítógépen futó folyamatot próbál meghívni Kill() . A metódus csak a helyi számítógépen futó folyamatokhoz érhető el.

csak .NET keretrendszer: A folyamat már kilépett.

-vagy-

Ehhez az objektumhoz Process nincs folyamat társítva.

-vagy-

A hívási folyamat a társított folyamat leszármazott fájának tagja.

A társított folyamat leszármazott fájának nem minden folyamata állítható le.

Megjegyzések

Ha entireProcessTree be van állítva true, azokat a folyamatokat, amelyekben a hívás nem rendelkezik engedélyekkel a részletek megtekintéséhez, a leszármazói leállítási folyamat csendben kihagyja, mert a megszüntetési folyamat nem tudja megállapítani, hogy ezek a folyamatok leszármazottak-e.

Lásd még

A következőre érvényes: