Async programming: Cooperative vs. Preemptive scheduling | Dark Hacker News