我想一次只接受来自线程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
}
}
由于