.net core 通过进程名称杀掉树莓派进程
时间: 2023-08-01 21:12:19 浏览: 126
可以使用 System.Diagnostics 命名空间中的 Process 类来实现。以下是示例代码:
```csharp
using System.Diagnostics;
// 获取进程名为 processName 的进程及其所有子进程,并杀死它们
public static void KillProcessTree(string processName)
{
Process[] processes = Process.GetProcessesByName(processName);
foreach (Process process in processes)
{
KillProcessTree(process.Id);
}
}
// 通过进程ID杀死进程及其所有子进程
public static void KillProcessTree(int processId)
{
Process[] childProcesses = Process.GetProcesses().Where(p => p.ParentProcessId == processId).ToArray();
foreach (Process childProcess in childProcesses)
{
KillProcessTree(childProcess.Id);
}
try
{
Process.GetProcessById(processId).Kill();
}
catch (ArgumentException) { }
}
```
使用方法如下:
```csharp
// 杀死名为 myProcess 的进程及其所有子进程
KillProcessTree("myProcess");
```
需要注意的是,杀死进程是一项危险的操作,需要谨慎使用。在杀死进程前,最好先保存进程的状态,以免造成数据丢失。
阅读全文