The Old New Thing

Old New Thing

C++ coroutines: Short-circuiting suspension, part 1

Avoiding needless stack buildup.

C++ coroutines: Awaiting an IAsyncAction without preserving thread context

Another use for a custom awaiter.

C++ coroutines: Framework interop

Plays well with others.

C++ coroutines: Constructible awaitable or function returning awaitable?

Two common patterns for simple awaitable objects.

C++ coroutines: Getting started with awaitable objects

Starting our walk-around.

In C++/WinRT, what happens when I treat an IInspectable as or convert one to a bool

Much less weird than C++/CX.

In C++/CX, hat pointers are contextually convertible to bool, but you can’t always static_cast them to bool

Because C++/CX is weird like that.

Not actually crossing the airtight hatchway: Harmless out-of-bounds read that is never disclosed

There's no way to make anything bad happen, so is anything bad actually happening?

The automotive emergency kit is not a toy

Please use it only for emergencies.

When should I use delayed-marshaling when creating an agile reference?

It's a balance between doing more work now in anticipation of saving work later.