@trase8

Как приостановить цикл в Java?

Задача такая

Есть форма, в которой присутствуют несколько полей. В них вводятся цифры для расчетов. Когда данные введены, нажимается кнопка и запускается цикл с несколькими итерациями. Внутри цикла производятся расчеты на основе этих данных. Проблема в том, что на каждой итерации нужно корректировать данные в форме. Получается такой диалог постоянный с пользователем.
Пихать в начало каждой итерации thrread.sleep() не вариант, потому что так нельзя ввести новые данные. Что дееелаааать?
  • Вопрос задан
  • 418 просмотров
Пригласить эксперта
Ответы на вопрос 1
@Free_ze
Пишу комментарии в комментарии, а не в ответы
По-хорошему, тяжелую логику (а вызовы sleep можно назвать тяжелой задачей, т.к. это тормозит поток, который не сможет обрабатывать события интерфейса) нужно выносить в отдельный поток (thread), GUI-поток должен вести себя пассивно и заниматься лишь взаимодействием с пользователем и запусками background worker'ов (для длительных операций).

В вашем случае есть простой путь: разделить задачки на итерации и выполнять их по таймеру.
Либо организовать полноценный фоновый поток, который можно будет невозбранно тормозить через sleep.

Если английский средней школы позволяет, советую пройти вот этот туториал.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
Bell Integrator Ульяновск
До 400 000 ₽
Bell Integrator Хабаровск
До 400 000 ₽
Bell Integrator Ижевск
До 400 000 ₽
11 мая 2024, в 06:09
30000 руб./за проект
11 мая 2024, в 00:19
1000 руб./за проект
10 мая 2024, в 23:51
30000 руб./за проект