1

私はWindowsプロジェクトと5秒ごとにタイマーを持つ1つのフォームを持っています。

これは、テーブルという名前のリクエストからメソッドを呼び出して処理します。

しかし、応答に時間がかかりすぎるメソッドタイプがいくつかあり、それらのメソッドを別のスレッドに配置する必要があります。両方のリクエストタイプを別々のスレッドと同期で実行できるようにします。

スレッド(マルチ非同期スレッド)を使用して両方を分離するにはどうすればよいですか?

4

2 に答える 2

6

.NET4.0Taskクラスを確認することをお勧めします。毎回フルスレッドを起動するのはやり過ぎかもしれません。タスクは、タイマーとともに、基盤となるスレッドプールを使用して作業を並行して実行します。

aの使用Taskは次のように簡単です。

Task t = Task.Factory.StartNew(
       () => 
       {
           // task code here
       });
于 2012-08-16T10:35:54.033 に答える
1
using System;
using System.Threading;

class Program
{
    static void Main()
    {
    Thread thread1 = new Thread(new ThreadStart(A));
    Thread thread2 = new Thread(new ThreadStart(B));
    thread1.Start();
    thread2.Start();
    thread1.Join();
    thread2.Join();
    }

    static void A()
    {
    Thread.Sleep(100);
    Console.WriteLine('A');
    }

    static void B()
    {
    Thread.Sleep(1000);
    Console.WriteLine('B');
    }
}

スレッドチュートリアル

于 2012-08-16T10:36:23.520 に答える