Different between task and thread in .Net core
Loading
Different between task and thread in .Net core
Know the answer? Post it — somebody with the same question will find it here.
Sign in to answer this question
It is the same account you read, post and publish with — and you will come straight back to this page.
Brahma Prakash ShuklaPosted Oct 30, 2022, 3:54 PM
Thread
The bare metal thing, you probably don't need to use it, you probably can use a
LongRunningtask and take the benefits from the TPL - Task Parallel Library, included in .NET Framework 4 (february, 2002) and above (also .NET Core).Tasks
Abstraction above the Threads. It uses the thread pool (unless you specify the task as a
LongRunningoperation, if so, a new thread is created under the hood for you).Rajanikant HawaldarPosted Oct 30, 2022, 2:31 PM
Here are some differences between a task and a thread.
1) The Thread class is used for creating and manipulating a thread in Windows. A Task represents some asynchronous operation and is part of the Task Parallel Library, a set of APIs for running tasks asynchronously and in parallel.
2) The task can return a result. There is no direct mechanism to return the result from a thread.
3) Task supports cancellation through the use of cancellation tokens. But Thread doesn't.
4) A task can have multiple processes happening at the same time. Threads can only have one task running at a time.
5) We can easily implement Asynchronous using ’async’ and ‘await’ keywords.
6) A new Thread()is not dealing with Thread pool thread, whereas Task does use thread pool thread.
7) A Task is a higher level concept than Thread.