在C# 7.0 in a Nutshell book 中,我读过一些似乎有点令人困惑的东西。
与 DomainUnload 事件不同,ProcessExit 事件处理程序是定时的:默认 CLR 主机在终止其线程之前为每个域提供两秒钟的事件处理程序,总共三秒钟。
(第 24 章 - 第 956 页)
2 秒对于代码块(即事件处理程序)意味着什么?似乎这取决于当前
进程
专用了多少时间- 因为这 2 秒通常由操作系统在进程之间共享。
因此,在进程被杀死之前,“进程退出事件处理程序”中允许完成多少工作是不确定的。