スレッドプールを使用するには スレッドプールはスレッドのキューであり、複数のスレッドを効率よく動作させる仕組みです。
スレッドオブジェクトを再利用することで、スレッドを再作成するオーバーヘッドを減らし、パフォーマンスを向上させます。
サンプルコードのように、ThreadPoolクラスを使用します。
別スレッドで動作させるメソッドには、object型のstateという引数を取ることができます。
using System;
using System.Threading;
public class List2
{
public List2()
{
}
public static void Main()
{
ThreadPool.QueueUserWorkItem(new WaitCallback(ThreadMethod), "A");
ThreadPool.QueueUserWorkItem(new WaitCallback(ThreadMethod), "B");
Console.ReadLine();
}
private static void ThreadMethod(object state)
{
for(int i=0; i<100; i++)
{
Thread.Sleep(5);
Console.Write(" {0} ", state);
}
}
}
目次に戻る
| Copyright(c) 2008 WoodenSoldier Software |
|