
This is the Title of the Book, eMatter Edition
Copyright © 2007 O’Reilly & Associates, Inc. All rights reserved.
1034
|
Chapter 18: Threading and Synchronization
Discussion
The ThreadPool is a great way to perform background tasks without having to man-
age all aspects of the thread yourself. It can be handy to know when the
ThreadPool
itself is going to become a bottleneck to your application, and the GetAvailableThreads
method can help you. However, you might want to check your application design if
you are consistently using this many threads, as you might be losing performance
due to contention or context switching. Queuing up work when the
ThreadPool is
full simply queues it up for execution once one of the threads comes free; the request
isn’t lost, just postponed.
See Also
See the “ThreadPool Class” topic in the MSDN documentation; see Applied
Microsoft .NET Framework Programming (Wintellect).
18.8 Configuring a Timer
Problem
You have one of the following timer configuration needs:
• You want to use a timer to call a timer callback method at a fixed time after the
timer object has been created. Once this callback method has been called the
first time, you want to call this same callback method at a specified interval (this
interval might be different from the time interval between the creation of the
timer and the first time the timer callback method is called).
• You want to use a timer to call