のテストコードがありwait(timeout)
ます。
public static void main(String[] args) throws Exception
{
Runnable r = new Runnable()
{
public void run()
{
while (true)
{
int random = (int)(Math.random() * 10);
synchronized(this)
{
try
{
wait(random);
}
catch (InterruptedException e)
{
e.printStackTrace();
}
}
System.out.println(random);
}
}
};
new Thread(r).start();
}
しかし、これは適切に機能していないようです。理想的には、メソッドで指定された一定の時間待ってrandom
から印刷する必要があります。しかし、いくつかの値を出力した後に停止するたびに(ランダムな回数)。
何が問題なのかを特定できません。