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

Raymond Chen

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!

8 comments

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

  • Mystery Man 0

    “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 0

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

      • Ismo Salonen 0

        What should it print ?

        All I get is :

        D:\>net helpmsg 3070

        memory

        • Dave Gzorple 0

          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.

        • Kalle Niemitalo 0

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

        • Adam Rosenfield 0

          I assume it should say enqueued instead of in queued.

  • Mark Tolley 0

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

Feedback usabilla icon