2016-07-29 3 views
0

Я пытаюсь убить/остановить поток Rengine, но я не могу, даже если звонит end() метод тоже. см. ниже мир кода.Как остановить/убить Rengine thread

Rengine engine = new Rengine(new String[] { "--no-save" }, false, null); 
---- 
---- 
engine.end(); 
System.out.println("engine::: "+engine); 

результат SYSOUT является

engine::: Thread[Thread-0,5,] 

тогда как убить мою Rengine нить?

ответ

0

Ваш двигатель уже закрыт. После того, как я вызываю .end() на Rengine, он завершает работу, а после этого, если нет кода для запуска java main(), выходы тоже нормально. Если я положил System.out.println("engine::: "+engine); перед выходом main() и после вызова engine.end(), я тоже получаю engine ::: Thread [Thread-1,5, main].

Sysout просто печатает ссылку на созданный объект Rengine. Например. если вы сделали Rengine engine = new Rengine (new String [] {"–vanilla"}, false, null);, тогда, когда вы печатаете движок после завершения вызова(), он просто печатает ссылку на объект движка.

Надеюсь, что это поможет еще читать: What is Object Reference Variable?