我正在使用 VS2010 和 ASP.NET 4。我在应用程序中运行了一个长期运行的后台线程,旨在“清理”文件夹中最近最少使用的文件。它使用 EventWaitHandle 来消除不必要的 CPU 使用,但在应用程序的生命周期内保持运行。
在 24-40 次左右删除后,应用程序重新启动。这发生在 IIS Express 和 WebDev 服务器下,并附加了调试器。后台线程不会抛出异常,但所有线程都会发生 ThreadAbortException,并且应用会重新启动。不会在任何地方进行重定向调用。
这些文件位于根目录中的“imagecache”文件夹中,而不是任何会导致应用重新启动的文件夹中。没有创建或删除文件夹。
重新启动似乎发生在某个删除阈值发生后的一个定时间隔。
知道为什么会发生这种情况以及如何阻止它吗?每 10 秒重新启动一次对我来说是不可接受的:)