0 / 0 / 0
Регистрация: 09.03.2014
Сообщений: 7
|
|
1 | |
Остановка потока. Выполнение действия по нажатию клавиши05.07.2014, 14:28. Показов 7433. Ответов 7
Метки нет (Все метки)
Здравствуйте. У меня такой вопрос. Например у меня есть класс генерации чисел, и другой класс это main, и любое сгенерированное число, я должен выводить на экран по нажатию кнопки,(работа именно через потоки) т.е. press button-> вывел 45-> press button -> вывел 83... и т.д. никак не могу приостотновить работу потока, т.к. сущетвует проверка на максимальное количество чисел, т.е. 10 например. Затолкать все в ActionListener я и сам смогу. Мне нужно именно остановить поток с сохранением итерации, и продолжить по нажатию клавиши.
0
|
05.07.2014, 14:28 | |
Ответы с готовыми решениями:
7
Остановка потока по нажатию клавиши Выполнение действия кнопки Button1 по нажатию клавиши "*" Остановка цикла по нажатию клавиши Запуск\остановка цикла по нажатию клавиши |
51 / 51 / 42
Регистрация: 06.09.2013
Сообщений: 188
|
||||||
05.07.2014, 16:38 | 2 | |||||
Xsenon156, попробуй как-то так
1
|
0 / 0 / 0
Регистрация: 09.03.2014
Сообщений: 7
|
|
05.07.2014, 22:52 [ТС] | 3 |
Не совсем то, у меня есть программа которая выполняется, но на определенном этапе её выполнения, в цикле, мне нужно выводить информацию на экран по нажатии кнопки(т.е каждую итерацию цикла for по нажатии на кнопку) т.к. все происходит в одном потоке то информация обновляется только при выходе из функции, поэтому нужен второй поток только для действий в этом цикле.
0
|
Форумчанин
5958 / 4192 / 406
Регистрация: 28.12.2013
Сообщений: 24,134
|
|
05.07.2014, 23:03 | 4 |
покажи часть кода,либо напиши упрощенную программу с такой же проблемой и выложи сюда.
0
|
0 / 0 / 0
Регистрация: 09.03.2014
Сообщений: 7
|
|||||||||||
06.07.2014, 16:05 [ТС] | 5 | ||||||||||
Хорошо пример Yoghurt_92 // 32-37 строки
И еще, в примере Yoghurt_92 при нажатии клавиши каждый раз создается новый поток, это тоже не мой случай(забыл исправить) ActionListener должен вызывать поток Generate, после выполнения одной итерации цикла for ставится на паузу, и по следующему клику мыши продолжатся, а не создавать еще 1 цикл на 10 итераций. С циклами и флагами идея хорошая, но что то у меня не получается.
0
|
51 / 51 / 42
Регистрация: 06.09.2013
Сообщений: 188
|
||||||
06.07.2014, 17:23 | 6 | |||||
Xsenon156, я показал суть, пример с флагами предлагается в книге Шилдта, и по мне, так удачно реализовано. Я подогнал под ваш вариант, показав способ, от которого бы сам плясал. Чтобы не создавать каждый раз поток, в класс отрисовки включите объект отвечающий за новый поток и генерацию рандомного числа, а потом юзайте его каждый раз при нажатии на кнопку.
Добавлено через 1 час 3 минуты Xsenon156, что-то вроде этого?
0
|
0 / 0 / 0
Регистрация: 09.03.2014
Сообщений: 7
|
||||||
06.07.2014, 18:41 [ТС] | 7 | |||||
Вроде то но при попытки вынести кнопку ничего не получилось...
Это Алгоритм Крускала МОД Графа. 65 строчка отвечает за вывод дерева на экран. При попытке привязать NewThreadClick( ActionListener), у вас это был Test к кнопке на фрэйме в другом классе ничего не выходит... class Rebro и class KruskalRebros т.е. два последних имеют отношение непосредственно к алгоритму, на них можно не обращать внимания.
0
|
51 / 51 / 42
Регистрация: 06.09.2013
Сообщений: 188
|
|
06.07.2014, 22:41 | 8 |
Xsenon156, что именно не выходит?
0
|
06.07.2014, 22:41 | |
06.07.2014, 22:41 | |
Помогаю со студенческими работами здесь
8
Остановка выполнения функции по нажатию клавиши Остановка сервера DNS по нажатию клавиши Выполнение действия по нажатию button Выполнение действия по нажатию кнопки Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |