Главная /
Программирование на Java /
Каким будет результат работы следующего кода? public abstract class SomeClass implements Runnable{ private Object lock = new Object(); public void lock() { synchronized (lock) { try { lock.wait(); System.out.print("1"); } catch (InterruptedException e) {}
Каким будет результат работы следующего кода?
public abstract class SomeClass implements Runnable{
private Object lock = new Object();
public void lock() {
synchronized (lock) {
try {
lock.wait();
System.out.print("1");
} catch (InterruptedException e) {}
}
}
public void unlock() {
synchronized (lock) {
lock.notify();
System.out.print("2");
}
}
public static void main(String s[]) {
new Thread(new SomeClass() {
public void run() {
lock();
}
}).start();
new Thread(new SomeClass() {
public void run() {
unlock();
}
}).start();
}
}
вопрос
Правильный ответ:
программа не завершит работу, на консоли ничего не появится
12 21
программа не завершит работу, на консоли появится
1
программа не завершит работу, на консоли появится
2
результат трудно предугадать
Сложность вопроса
48
Сложность курса: Программирование на Java
83
Оценить вопрос
Комментарии:
Аноним
Экзамен сдан на 4 с минусом. Спасибо сайту
26 апр 2020
Аноним
Я помощник профессора! Срочно удалите ответы с интуит. Пожалуйста
22 мар 2016
Другие ответы на вопросы из темы программирование интуит.
- # Что будет выведено на экран в результате выполнения следующего кода: public class SomeClass { static int x; public static void main(String[] args) { SomeClass s = new SomeClass(); s.test(5); System.out.println(x); } private void test(int x) { this.x = x + 5; System.out.print(x); } }
- # Если один поток начал исполнение synchronized-блока, указав ссылку на некий объект, может ли другой поток обратиться к полю этого объекта? К методу?
- # Какие утверждения относительно сериализации в Java верны?
- # Какие методы класса File позволяет различать обычный файл и директорию?
- # Какой из следующих вариантов кода выведет на экран "perform"?