我的项目有一个创建流程的对象。该对象的 Dispose 函数会终止(或尝试)进程。但是,如果程序崩溃,它会使进程继续运行并且不会进行清理。这会导致程序下次失败,因为它尝试再次启动该进程但无法锁定它。
如何确保该进程被终止?我总是使用在 using
block 中创建进程的对象
仅供引用,我正在使用 C# 和 .NET 3.5
最佳答案
定义“崩溃”;有不同程度的崩溃...例如,如果某些东西主动终止了您的进程,您将几乎没有机会运行任何 Dispose/finalizers 等 - 但如果您的线程优雅地展开(即使通过异常),您应该没问题(因为您正在使用using
)。您能澄清一下设置是什么吗?
关于c# - 退出时杀死进程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/669981/