这是什么意思?由于有一个主机终止处于队列中,因此在操作完成前,调用方指定的等待超时。

原文:What does this mean? The caller specified wait timed out before the operation completed because a host termination is in queued – The Old New Thing (microsoft.com)September 20th, 2021

因此,您的程序正在运行,处理自己的业务,然后它因为异常0x80070bfe崩溃了:“由于有一个主机终止处于队列中,因此在操作完成前,调用方指定的等待超时”。或可能是0x80070bfd :“在操作完成之前,调用方指定的等待超时”。这完全是胡说八道。这是什么意思?我不记得指定了任何超时,我也不知道主机终止是什么。

这意味着当你的应用程序暂停或恢复时,你调用了Core­Application.Create­New­View。

这个特定的错误是在窗口基础结构代码的深处产生的,问题表现为内部超时。内部low-level组件报告操作超时,这就是错误消息提示为超时的原因。

然后,这个错误会一路向上传播到应用程序,而没有人意识到,“嘿,这个错误可能对我将要报告它的人没有意义”。错误消息在最初的时候是有意义的,但是当错误到达应用程序时,错误的原始上下文已经消失了,除非您戴着可以看穿基础结构的有色眼镜,否则消息就没有意义了。

抱歉!

附加聊天:有时会报告错误码0X87B20C08:这个错误码甚至没有相关的文本信息。

=========================

我们使用SDK时,一定要对SDK错误进行处理。因为SDK错误信息相对专业,最终最终用户是看不懂的。