← Back to context

Comment by pjmlp

3 days ago

C++20 co-routines model is based on .NET ones, as the original model was proposed by Microsoft and inspired on WinRT work.

If you know how to create asyncable types on .NET, the magic methods expected by C++ compiler will feel familiar.

You mean in the sense that async methods return "awaitable" (Value)Task objects that contains the actual activation machinery that can be queried for liveness status?

It's funny that they're actually revamping the entire machinery for .NET 11 to defer allocations by default for non-waiting codepaths (Not sure, but iirc that machinery might require JIT compilation so would've perhaps not been possible to use for C++).