Hacker News new | ask | show | jobs
by reubenbond 4239 days ago
"WaitAll" and "WaitAny" have their non-blocking counterparts, "WhenAll" and WhenAny", which allow you to express the same logic/structure without blocking a thread.

Nesting callbacks (ContinueWith) gets messy very quickly, and then your program structure and semantics are hidden behind masses of arcane ceremony.

Performing async calls dependent on previous async calls is hard enough to do correctly using ContinueWith, but try using it in a loop.