September 20th, 2021

What does this mean? The caller specified wait timed out before the operation completed because a host termination is in queued

So your program is running along, minding its own business, and then it crashes with exception 0x80070bfe = “The caller specified wait timed out before the operation completed because a host termination is in queued”, or possibly 0x80070bfd = “The caller specified wait timed out before the operation completed.” This is completely gibberish. What does it mean? I don’t remember specifying any timeout, and I don’t know what a host termination is.

It means that you called Core­Application.Create­New­View while your app was suspending or resuming.

This particular error is generated deep inside the windowing infrastructure code, and the problem manifests itself in an internal timeout. The inner low-level component reports that an operation timed out, and that’s the reason why the error message talks about a timeout.

This error is then propagated all the way up the chain back to the application without anybody ever realizing, “Hey, this error may not make sense to the person I’m reporting it to.” The error message made sense at the point of origination, but by the time the error reaches the application, the original context of the error is long gone, and the message makes no sense unless you’re wearing windowing infrastructure-colored glasses.

Sorry.

Bonus chatter: Sometimes the error manifests itself in error 0X87B20C08, which doesn’t even have an associated message!

Topics
Code

Author

Raymond has been involved in the evolution of Windows for more than 30 years. In 2003, he began a Web site known as The Old New Thing which has grown in popularity far beyond his wildest imagination, a development which still gives him the heebie-jeebies. The Web site spawned a book, coincidentally also titled The Old New Thing (Addison Wesley 2007). He occasionally appears on the Windows Dev Docs Twitter account to tell stories which convey no useful information.

8 comments

Discussion is closed. Login to edit/delete existing comments.

  • Mark Tolley · Edited

    Used to work on Win/286 device drivers. Always remember the entry point in DDK – “BozosEndUpHere”. Wonder who coded that bit?

  • Mystery Man

    “The caller specified wait timed out before the operation completed because a host termination is in queued”

    There is a typo at the end.

    • Raymond ChenMicrosoft employee Author

      Believe it or not, the typo is in the actual error message. Try it: net helpmsg 3070

      • Ismo Salonen

        What should it print ?

        All I get is :

        D:\>net helpmsg 3070

        memory

      • Adam Rosenfield

        I assume it should say enqueued instead of in queued.

      • Kalle Niemitalo

        3070 = “memory” matches SERVICE_UIC_M_MEMORY in <LMSvc.h>. Is the other meaning of 0x80070bfe in any public header file?

      • Dave Gzorple

        Seems to be some sort of template message set for where the problem lies, if you continue on from 3070 you get memory, disk space, thread, process, lumbago, haemorrhoids, and arthritis.