Skip to Main Content
C# in a Nutshell
book

C# in a Nutshell

by Ben Albahari, Ted Neward, Peter Drayton
March 2002
Intermediate to advanced content levelIntermediate to advanced
864 pages
31h 8m
English
O'Reilly Media, Inc.
Content preview from C# in a Nutshell

Name

ThreadPool

Synopsis

Creating or destroying a thread takes a fair amount of work. Therefore, if you pool threads, your program executes more efficiently since you get rid of the overhead associated with creating and destroying threads. There is one thread pool per process. To queue work to execute by this pool of worker threads, call any of the ThreadPool static methods. QueueUserWorkItem() queues a delegate to execute when one of the pool’s threads becomes free. RegisterWaitForSingleObject() takes a WaitHandle and executes the specified method either when the WaitHandle is in the signaled state or when a time-out occurs. BindHandle() and UnsafeQueueUserWorkItem() are provided for compatibility with the Win32 API.

public sealed class ThreadPool {
// Public Static Methods
   public static method bool BindHandle(IntPtr osHandle);  
   public static method void GetAvailableThreads(
        out int workerThreads, 
        out int completionPortThreads);  
   public static method void GetMaxThreads(
        out int workerThreads, 
        out int completionPortThreads);  
   public static method bool QueueUserWorkItem(
        WaitCallback callBack);  
   public static method bool QueueUserWorkItem(
        WaitCallback callBack, object state);  
   public static method RegisteredWaitHandle RegisterWaitForSingleObject(
        WaitHandle waitObject, 
        WaitOrTimerCallback callBack, object state, 
        int millisecondsTimeOutInterval, 
        bool executeOnlyOnce);  
   public static method RegisteredWaitHandle RegisterWaitForSingleObject(
        WaitHandle waitObject, 
        WaitOrTimerCallback callBack ...
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.
Start your free trial

You might also like

C# 8.0 in a Nutshell

C# 8.0 in a Nutshell

Joseph Albahari, Eric Johannsen
C# 10 in a Nutshell

C# 10 in a Nutshell

Joseph Albahari
C# in a Nutshell, Second Edition

C# in a Nutshell, Second Edition

Peter Drayton, Ben Albahari, Ted Neward
Code like a Pro in C#

Code like a Pro in C#

Jort Rodenburg

Publisher Resources

ISBN: 0596001819Catalog PageErrata