2010-04-05 78 views
1

我知道,无论何时添加/删除/修改“App_Code”,“App_GlobalResources”和“bin”目录中的任何文件,ASP.NET都会重新编译并重新启动应用。Asp.Net - 它什么时候重新启动应用程序

我的问题是:“当前正在执行更改的任何线程会发生什么?”

他们完成了吗?是抛出一个Thread.Abort异常吗?

如果应用程序本身对这些目录中的任何一个进行更改会发生什么?

+0

这也适用于web.config。当您无法访问IIS时,触摸web.config是一种强制执行回收操作的简便方法。 – harpo 2010-04-05 17:56:55

回答

3

所有当前正在执行的线程在重新编译之前都会优雅地完成。

Here's the docs

当一个工作进程请求 循环,WWW服务发起 重叠的循环,创建一个新的 工作进程,以取代旧的。 虽然新工作进程是 开始,但旧进程继续到 服务请求。在新进程 启动并成功初始化后, WWW服务将指示旧的工作进程 关闭。在此 点,旧工作进程停止 接受来自HTTP.sys 的新请求并开始关闭。 WWW 服务允许老工作进程 一个配置的时间段,其中 在 工作进程关闭之前完成处理其请求。如果 WWW服务在配置的时间内未能关闭 ,则WWW服务将终止工作人员 进程。

+0

非常感谢!这正是我所期待的。 – 2010-04-05 17:58:58

相关问题