1224
голосов
33ответов
898451 просмотров

Разница между wait () и sleep ()

В чем разница между wait() и sleep() в потоках? Правильно ли я понимаю, что поток wait()-ing все еще находится в рабочем режиме и использует циклы ЦП, но sleep()-ing не использует циклы ЦП? Почему у нас есть и wait(), и sleep(): как их реализация различается на более низком уровне?

129
голосов
12ответов
233355 просмотров

Как использовать ожидание и уведомление в Java без исключения IllegalMonitorStateException?

У меня есть 2 матрицы, и мне нужно их умножить, а затем распечатать результаты каждой ячейки. Как только одна ячейка будет готова, мне нужно ее распечатать, но, например, мне нужно распечатать ячейку [0] [0] перед ячейкой [2] [0], даже если сначала готов результат [2] [0] . Поэтому мне нужно рас...

2149
голосов
42ответов
693465 просмотров

«реализует Runnable» против «расширяет поток» в Java

За то время, которое я провел с потоками в Java, я нашел два способа написания потоков: С implements Runnable: public class MyRunnable implements Runnable { public void run() { //Code } } //Started with a "new Thread(new MyRunnable()).start()" call Или с extends Thread:...