在ColdFusion 10中,如何判断OnApplicationEnd是由应用程序超时还是服务器关闭引起的?

时间:2014-09-03 15:18:22

标签: coldfusion

在Application.cfc中,在应用程序超时或服务器关闭时调用OnApplicationEnd。但是,我能确切地说出原因是哪一个吗?我只想在服务器关闭时运行一些清理代码,而不是在应用程序超时时运行。我真的能这样做吗?

1 个答案:

答案 0 :(得分:9)

在这两种情况下,堆栈跟踪可能都不同。设置测试以捕获错误并在每个实例中记录堆栈跟踪。然后,您将知道在调用onApplicationEnd时要查找的内容以确定原因。 (您每次都需要捕获错误并搜索堆栈)。

当然,这带来了一个很大的免责声明,即您依赖于未记录的行为,这些行为可以随着对ColdFusion等的任何更新而改变,等等。老实说,最好将逻辑封装起来,以便它不会出现这种情况。关注应用程序关闭的原因。