2016-08-24 2 views
-1

Есть ли способ выйти из метода, а затем повторно ввести этот метод в точную точку из другого класса?Выход из метода затем введите (в той же точке)? JAVA

Например: Класс 1:

Keypresser.KeyPress(KeyEvent.VK_W); 
wpressed = true 
KeyPresser.KeyRelease(KeyEvent.VK_W); 

Класс 2:

while(Class1.wpressed == true){ 
CANCEL CLASS 1 AT CURRENT STANDING 
thread.wait(1); 
RESUMS CLASS 1 AT THAT STANDING 
} 
+0

Гипотетически да, однако, если вы чувствуете, что вам нужно сделать что-то подобное, «вы делаете это неправильно». – Madbreaks

ответ

1

Нет, Java не предоставляет возможности для программистов повторно ввести метод в произвольной точке в коде. Хотя этот метод может быть предварительно упущен планировщиком, чтобы другие потоки запускались, а затем возобновлялись с той же точки, для Java-программистов не существует механизма, который мог бы сделать то же самое.

Вам необходимо создать механизм связи для передачи информации между вашими потоками. Например, вы можете использовать объект Semaphore, чтобы сигнализировать поток, когда остановиться и когда продолжить. Конечно, работающий поток должен выполнять ваш код в то время, когда вы говорите ему, чтобы сделать паузу.

Смежные вопросы