내 솔루션은 모든 프로세스를 나열 하기 위해 Process.GetProcess () 를 사용 하는 것입니다.
원하는 프로세스를 포함하도록 필터링하면 Process.Kill () 메서드를 실행 하여 중지 할 수 있습니다.
var chromeDriverProcesses = Process.GetProcesses().
Where(pr => pr.ProcessName == "chromedriver"); // without '.exe'
foreach (var process in chromeDriverProcesses)
{
process.Kill();
}
최신 정보:
( Async Enumerables ) async
의 유용한 최근 방법으로 접근 방식 을 사용하려면 다음을 확인하십시오.C# 8
const string processName = "chromedriver"; // without '.exe'
await Process.GetProcesses()
.Where(pr => pr.ProcessName == processName)
.ToAsyncEnumerable()
.ForEachAsync(p => p.Kill());
참고 : async
메서드를 사용 한다고해서 항상 코드가 더 빨리 실행되는 것은 아니지만 적어도 CPU 시간을 낭비하지 않고 작업을 수행하는 동안 포 그라운드 스레드가 중단되는 것을 방지합니다. 어쨌든 원하는 버전을 생각해야합니다.