Не могу прервать выполнение Phantomjs в Java

151
22 ноября 2018, 02:30

У меня есть интерфейс в котором есть кнопка старт, она запускает Phantomjs, но в момент запуска, интерфейс становиться недоступным, до тех пор пока полностью не выполниться Phantomjs, т-е я нажимаю на кнопку "закрыть" и программа не закрывается. Как сделать чтобы интерфейс не замораживался в момент запуска phantomjs?

Answer 1

Вам нужно запустить выполнение вашего phantomjs процесса в другом потоке:

Создаем класс для потока:

public class PhantomJS implements Runnable {
    @Override
    public void run() {
        // phantomjs code
    }
}

В нужно месте запускаем:

SwingUtilities.invokeLater(new PhantomJS());

Класс изменяйте как вам нужно. Весь рабочий код содержится в методе run.

READ ALSO
Сервлеты java. Выбор DAO в рантайме

Сервлеты java. Выбор DAO в рантайме

Есть web приложениеПри входе попадаем на страницу логина, логику самого приложения опустим

143
Потоки в Spring. Не могу разобраться с ThreadLocal

Потоки в Spring. Не могу разобраться с ThreadLocal

Не могу понять как это вообще работаетИспользую ThreadLocal<>

153
Random без повторений числа

Random без повторений числа

Написал класс где генерируются случайные числа (без повторения значений) и записываются в массив

201
Помогите отредактировать код JQuery

Помогите отредактировать код JQuery

В наличии есть два JS кодаПервый:

128