powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Java [игнор отключен] [закрыт для гостей] / GUI + thread. Корректно ли ?
15 сообщений из 40, страница 2 из 2
GUI + thread. Корректно ли ?
    #38604049
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
korshun2. При остановке командой cancel(); условие if(isCancelled()) { } не выполняется.

А разве call() после cancel() вообще вызывается?
...
Рейтинг: 0 / 0
GUI + thread. Корректно ли ?
    #38604056
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
korshun,

Попробуйте задать первончальное значение task message в createTask().
...
Рейтинг: 0 / 0
GUI + thread. Корректно ли ?
    #38604105
korshun
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Обнулил setPeriod.
Четко видно, что в label'е мелькают данные - получается они туда все таки попадают, но такое ощущение, что сразу же затираются..
...
Рейтинг: 0 / 0
GUI + thread. Корректно ли ?
    #38604110
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
korshunОбнулил setPeriod.
Четко видно, что в label'е мелькают данные - получается они туда все таки попадают, но такое ощущение, что сразу же затираются..
Ага. Я думаю так. Вызывается createTask() - там Task с пустым message. Возможно он заранее создаётся и в результате затирает текст на пустой. А потом updateMessage() показывает новый текст, но сразу же затирается из-за нового вызова createTask();
...
Рейтинг: 0 / 0
GUI + thread. Корректно ли ?
    #38604182
korshun
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Получается так.
В общем для того, что бы в label что-то отображалось, придется вешать в Task() sleep(), равный setPeriod.
Благодарю, что помогли разобраться!
...
Рейтинг: 0 / 0
GUI + thread. Корректно ли ?
    #38604190
korshun
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Туплю, setPeriod в этом случае вообще можно не трогать.
...
Рейтинг: 0 / 0
GUI + thread. Корректно ли ?
    #38604207
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
korshun,

я бы багу засабмитил.
...
Рейтинг: 0 / 0
GUI + thread. Корректно ли ?
    #38604217
korshun
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
С удовольствием, но не знаю, как это сделать :) На Java только с месяц назад "подсел".
...
Рейтинг: 0 / 0
GUI + thread. Корректно ли ?
    #38604238
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
GUI + thread. Корректно ли ?
    #38604334
ivanra
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ну нельзя так. Task.Call вызывается в отдельном потоке, а доступ к x, msg ничем не защищен
...
Рейтинг: 0 / 0
GUI + thread. Корректно ли ?
    #38604339
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ivanraTask.Call вызывается в отдельном потоке, а доступ к x, msg ничем не защищен
updateMessage() и есть специальный метод для использования из любых потоков.
...
Рейтинг: 0 / 0
GUI + thread. Корректно ли ?
    #38604368
ivanra
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Что там отображается - отдельная история (хотя, может, это всё взаимосвязано), но
- msg и x инициализируются в потоке javafx
- а изменяются в методе Task.Call
Код: java
1.
2.
msg += ".";
x++;

, который работает в другом потоке. Неизвестно, вызывается ли Task.Call в синхронизированном блоке, к сожалению, исходники javafx недоступны, поэтому предположим худшее - не только не сихронизированно, но и каждый раз в новом потоке. Я бы в таких условиях содержимому переменных msg и x не доверял
...
Рейтинг: 0 / 0
GUI + thread. Корректно ли ?
    #38604414
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ivanraЯ бы в таких условиях содержимому переменных msg и x не доверял
А, да. Но это отдельная тема. То что значения считаются как попало это да. Но с JavaFX проблема тоже остаётся.
...
Рейтинг: 0 / 0
GUI + thread. Корректно ли ?
    #38604616
korshun
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Blazkowicz http://bugreport.java.com/bugreport/
Тут пишут:
"For bug reports related to JavaFX, Please use the following site: JavaFX Bug Submissions to post and track reports related to JavaFX."
Где по данной ссылке открывается уж что-то совсем непонятное, по крайней мере не нашел там, где можно отправить описание проблемы :(
...
Рейтинг: 0 / 0
GUI + thread. Корректно ли ?
    #38604619
korshun
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ivanraНу нельзя так. Task.Call вызывается в отдельном потоке, а доступ к x, msg ничем не защищен
Насколько помню из того, что читал на днях о потоках, эти переменные можно объявить как volatile ?:)
...
Рейтинг: 0 / 0
15 сообщений из 40, страница 2 из 2
Форумы / Java [игнор отключен] [закрыт для гостей] / GUI + thread. Корректно ли ?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]