Tasks
Tasks are abstractions in .NET that provide units of asynchrony, just like promises in JavaScript. In initial versions of .NET, we had to rely on threads only, which were created either directly or using the ThreadPool class. The ThreadPool class provided a managed abstraction layer over threads but developers still relied on the Thread class for better control. By creating a thread via the Thread class, we gained access to the underlying object, which we can wait for, cancel, or move to the foreground or background. In real time, however, we required threads to perform work continuously. This required us to write lots of code, which was difficult to maintain. The Thread class was also unmanaged, which put a high burden on both the ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access