gpt4 book ai didi

c# - System.Overflow 异常 - int32 太大或太小

转载 作者:行者123 更新时间:2023-11-30 15:48:28 25 4
gpt4 key购买 nike

我需要一些建议。

我有在夜间运行的 Windows 服务。在我的开发环境中,它无一异常(exception)地运行,但是当我在“安装在其他机器上”运行它时,当我早上来的时候,我受到了 System.Overflow 异常的欢迎,它说我已经将 int32 设置为太大或太小的值。

我仔细梳理了该服务的 c# 代码,并且我对所有内容都有 try/catch 语句,它们应该捕获任何错误并将其写入日志,而不会因此溢出异常而完全停止我的服务。但它仍然会发生并停止服务。

对于如何查明导致此类错误的原因的任何概念性建议,我将不胜感激。

最佳答案

在整个代码中添加 try/catch block 的问题是很容易遗漏某个地方,因此不会记录异常。一种更可靠的方法是使用值 AppDomain.UnhandledException。这将针对当前 AppDomain 中未处理的任何异常触发。您可以 Hook 它以写入您的日志文件,并希望更好地了解错误的来源

AppDomain.CurrentDomain.UnhandledException += OnUnhandledException;

...

void OnUnhandledException(object sender, UnhandledExceptionEventArgs e) {
// Log the exception here
}

关于c# - System.Overflow 异常 - int32 太大或太小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2567211/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com