我正在编写一个应用程序,通过复杂的API处理大而丑的第三方系统.有时在系统中会发生一些错误,但是如果我们等待我的程序面对这个错误,那就太晚了.
所以,我使用一个单独的线程来检查系统状态如下:
while (true)
{
ask_state();
check_state();
System.Threading.Thread.Sleep(TimeSpan.FromSeconds(1));
}
Run Code Online (Sandbox Code Playgroud)
如果我在100毫秒或每分钟检查一次系统状态并不重要.
但我听说使用Thread.Sleep()是一种不好的做法.为什么?在这种情况下我该怎么办?