351 читали · 2 года назад
Java 1082. Назовите различия между synchronized и ReentrantLock?
Ниже перечислены некоторые различия между synchronized и ReentrantLock в Java: Гибкость использования: ReentrantLock предоставляет более гибкий способ управления блокировками в сравнении с synchronized. Он обеспечивает возможность использования нескольких условных переменных, попыток получить блокировку с таймаутом и прерываниями, что делает его более мощным инструментом для управления потоками. synchronized, с другой стороны, предоставляет простой и удобный способ синхронизации методов или блоков, но не поддерживает дополнительные функции, такие как условные переменные...
2 года назад
Java 201. Как работает Thread.join()?
Метод Thread.join() блокирует текущий поток до тех пор, пока указанный поток не завершится. Когда вызывается метод join() для потока A ссылающегося на поток B, то поток A будет заблокирован и ожидать завершения потока B. Как только поток B завершится, поток A продолжит выполнение со следующей инструкции после вызова join(). Например, если в главном потоке созданы и запущены два дочерних потока (назовем их поток А и поток В), и главный поток вызывает...