4

我对我开始的过程有疑问。

我用Process.Start()方法开始这个过程。该进程是没有 GUI 的 Windows 窗体应用程序。我从在 IIS 上自己的应用程序池(作为 LocalSystem 运行)上运行的 Web 应用程序启动该过程。

该过程开始时没有问题,但过了一段时间我可以在日志中看到该过程停止执行它的工作(不发生日志记录)。如果我停止启动进程的应用程序池并再次启动池(不执行其他操作),则进程从停止的位置开始。我可以从它停止的日志中看到这一点。

我对父级(网络应用程序)没有任何依赖关系。我不会在子进程中等待任何东西。它只对另一台服务器进行大量 API 调用。当它作为线程运行时,代码实际上完美无缺。我更改为子进程,因为我希望它运行 LONG 作业。如果我使用工作进程,IIS 只会让我关闭。

那么现在有人知道是什么导致了这种奇怪的行为吗?

4

1 回答 1

3

欢迎 IIS 随时回收应用程序池。这就是停止你的进程的原因。

您应该将您的进程移动到它自己的作为 Windows 服务运行的应用程序中。

于 2012-06-05T13:20:10.310 回答