终止多线程进程

本文关键字:进程 多线程 终止 | 更新日期: 2024-07-27 19:46:34

Windows Mobile 6.5

我有一个进程,它使用System.Threading.Timer以指定的间隔将一些数据上传到网络。

现在我想从GUI应用程序中终止这个过程。我可以使用进程枚举器来获取进程对象。当我调用Process.Kill时会发生什么?它会终止它吗?进程可能正在从本地数据库读取/删除数据并将其发送到服务。我该怎么做才能确保至少如果它在中间,它不会终止,并且一旦完成,它可以在下一个Timer事件触发之前终止?

终止多线程进程

终止这样的应用程序会切断它的连接,从而引入损坏数据的明显可能性。唯一的解决方法是而不是终止进程。

您必须引入一种方法来与需要退出的应用程序进行通信,这样它就可以完成它正在做的任何事情,这样数据就不会被破坏。

也就是说,应用程序的编写方式必须能够接受这样的请求(无论你想怎么做)。