Invoking a delegate on a thread pool
This recipe will show you how to execute a delegate asynchronously on a thread pool. In addition, we will discuss an approach called Asynchronous Programming Model (APM), which was historically the first asynchronous programming pattern in .NET.
Getting ready
To step into this recipe, you will need Visual Studio 2012. There are no other prerequisites. The source code for this recipe could be found in BookSamples\Chapter3\Recipe1
How to do it...
To understand how to invoke a delegate on a thread pool, perform the following steps:
- Start Visual Studio 2012. Create a new C# Console Application project.
- In the
Program.cs
file, add the followingusing
directives:using System; using System.Threading;
- Add the following code snippet below the
Main
method:private delegate string RunOnThreadPool(out int threadId); private static void Callback(IAsyncResultar) { Console.WriteLine("Starting a callback..."); Console.WriteLine("State passed to a callback...