在线程处于无效状态时,正在寻找等待/保留其他线程的方法?

时间:2014-03-02 00:47:04

标签: c# multithreading thread-safety threadpool long-polling

我正在寻找一种方法来等待线程中的所有线程......

我通常有10个线程正在运行。

我有一个空白,这很重要......

所有线程一起进入该空白。 我想等待其他线程无效或开始无效...

例如:

    public static void theVoid(int ID)
    {
        //<THREADS WAIT STATION>
        //ACTIONS
        //ACTIONS
        //<ONE THREAD STILL PROCESSING>
        Console.WriteLine("Test");
    }

如果一个线程完成void的操作或达到void的行尾,则其他线程将继续。

同样......

我该怎么做?

非常感谢。

1 个答案:

答案 0 :(得分:0)

lock能帮你工作吗?

private static object gate = new object();

public static void theVoid(int ID)
{
    lock (gate)
    {
        //<THREADS WAIT STATION>
        //ACTIONS
        //ACTIONS
        //<ONE THREAD STILL PROCESSING>
        Console.WriteLine("Test");
    }
}