Look, I’m 100% behind having a blog post which says "hey, keep in mind that these calls will run sequentially, that’s why there’s Task.yield_many`.
I mostly just feel like the sentence “it should show you that running in parallel with timeouts is not just a Task.await away.” implies that there’s something wrong with how the Elixir Task.await function works, and that no easy solution is present. A more accurate summary would be something like:
it should show you that if you want tasks to share a timeout, you want Task.yield_many instead of consecutive Task.await
The other issue is that the blog post doesn’t actually explain WHY the behaviour is happening, and why it isn’t actually unexpected once you understand what each part does.
I don’t really agree that it’s a “common misunderstanding” or a “pitfall” either, but those are definitely more subjective areas.


















