Geeks With Blogs
Deeksha Sharma

thread pool is a collection of threads that can be used to perform several tasks in the background. (See Threading (C# and Visual Basic) for background information.) This leaves the primary thread free to perform other tasks asynchronously.

Thread pools are often employed in server applications. Each incoming request is assigned to a thread from the thread pool, so that the request can be processed asynchronously, without tying up the primary thread or delaying the processing of subsequent requests.

Once a thread in the pool completes its task, it is returned to a queue of waiting threads, where it can be reused. This reuse enables applications to avoid the cost of creating a new thread for each task.

Thread pools typically have a maximum number of threads. If all the threads are busy, additional tasks are put in queue until they can be serviced as threads become available.

You can implement your own thread pool, but it is easier to use the thread pool provided by the .NET Framework through the ThreadPool class.

With thread pooling, you call the ThreadPool.QueueUserWorkItem method with a delegate for the procedure you want to run, and Visual Basic or C# creates the thread and runs your procedure.

Posted on Thursday, September 25, 2014 7:18 AM | Back to top

Comments on this post: Thread Pooling in C#

No comments posted yet.
Your comment:
 (will show your gravatar)

Copyright © Deeksha Sharma | Powered by: