~/talk

Yield Return ’cause I’m Awaiting Deep Dive into Async Streams

slides:none on file

C# 8 adds async streams as a concrete feature: language-level async iterators produce and consumers await IAsyncEnumerable<T> (sample code at github.com/akarpov89/AsyncStreamsDemo) and .NET Core / .NET Standard 2.1 expose BCL async-iterator helpers. Compiler lowers async iterators into a state machine that reuses a ManualResetValueTaskSource to avoid allocations, supports IAsyncEnumerable<T> shapes, and respects EnumeratorCancellation attributes for correct linked CancellationToken behavior. System.Threading.Channels and System.Linq.Async are recommended for bridging push/pull and async LINQ.

AI-written summary · about

  1. 0:00Introduction
  2. 1:01Exploring Diversity / Pull vs Push
  3. 5:20Applying Duality / Push
  4. 12:12C# 8 in Action
  5. 25:28Lowering and Compiler Internals
  6. 43:36Async LINQ
  7. 51:52Summary
  8. 52:32Questions and Answers
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.