摘要: 最近我正在处理C#中关于timeout行为的一些bug。解决方案非常有意思,所以我在这里分享给广大博友们。 我要处理的是下面这些情况: - 我们做了一个应用程序,程序中有这么一个模块,它的功能向用户显示一个消息对话框,15秒后再自动关闭该对话框。但是,如果用户手动关闭对话框,则在timeout时我们无需做任何处理。 - 程序中有一个漫长的执行操作。如果该操作持续5秒钟以上,那么请终止这个操作。 - 我们的的应用程序中有执行时间未知的操作。当执行时间过长时,我们需要显示一个“进行中”弹出窗口来提示用户耐心等待。我们无法预估这次操作会持续多久,但一般情况下会持续不到一秒。为了避免弹出窗口一闪而过,我们只想要在1秒后显示这个弹出窗口。反之,如果在1秒内操作完成,则不需要显示这个弹出窗口。 这些问题是相似的。在超时之后,我们必须执行X操作,除非Y在那个时候发生。 阅读全文
posted @ 2018-01-22 12:53 阿子 阅读(12336) 评论(4) 推荐(21) 编辑