根据ID来暂停线程

时间:2014-03-31 02:38:38

标签: java multithreading sleep

我想一次只接受来自线程1的输出。我有一个布尔arraylist,它将所有值保存为false bar 1.这个真实位置然后通过其ID号与线程相关。这是唯一被允许的主题'输出,我想让所有其他人进入睡眠状态,直到他们各自的arraylist号码调用它们。这是我到目前为止的代码

                int threadPos = 0;
                while (true)
                {
                    if(turn.get(threadPos)==true) //see if value in arraylist is true
                    {//if so accept its input, then increment count
                        userInput = in.readLine();
                        System.out.println(userInput);
                        turn.set(threadPos, false);
                        if(threadPos < turn.size())
                        {
                            threadPos++;
                            turn.set(threadPos, true);
                        } else {
                            threadPos = 0;
                            turn.set(0, true);
                        }
                    } else {
                        //Put all other threads to sleep
                    }

                }

由于

0 个答案:

没有答案