0 / 0 / 0
Регистрация: 29.02.2016
Сообщений: 14
|
|
1 | |
Получить результат из потока в главный поток16.06.2016, 23:22. Показов 3327. Ответов 7
Метки нет (Все метки)
Всем добрый вечер. Я только начинаю изучать многопоточность, столкнулся со следующей задачей:
"Задана матрица действительных чисел. Найти номер строки матрицы с максимальной суммой элементов. Вычисление сумм элементов по строке матрицы оформить в виде отдельных потоков." То есть, если я правильно понял, то каждая строка = один новый поток, после чего, когда в каждом потоке будет посчитана сумма элементов строки, мне нужно эти значения сумм получить в главный поток и там уже найти максимум. Потоки создаю с помощью интерфейса Runnable. А вот как потом вернуть значение я что-то не понимаю.
0
|
16.06.2016, 23:22 | |
Ответы с готовыми решениями:
7
Как получить результат переменной из другого потока Приостановить главный поток до закрытия формы Как передать данные из дочерного потока в главный поток Передача объекта обратно в главный поток из другого потока |
63 / 63 / 58
Регистрация: 19.01.2016
Сообщений: 152
|
||||||
16.06.2016, 23:46 | 2 | |||||
Создай массив типа ExecutorService
0
|
2398 / 2223 / 565
Регистрация: 28.12.2010
Сообщений: 8,672
|
||||||
17.06.2016, 00:11 | 3 | |||||
Поскольку готоволю материал для лекции введения в джаву 8, оставлю тут решение этой задачи в функциональном стиле. ТСу такое решение сдавать не советую т.к препод если и поймет его, то вряд ли поверит что это вы сами написали
0
|
0 / 0 / 0
Регистрация: 29.02.2016
Сообщений: 14
|
|
17.06.2016, 18:52 [ТС] | 4 |
Мне не нужно никому это сдавать. Задачки для себя).
И интересуют именно как обстоят дела с потоками. Попробую с массивом ExecutorService. Просто читаю Шилдта Java 2, и там про такие вещи не рассказал он.
0
|
2398 / 2223 / 565
Регистрация: 28.12.2010
Сообщений: 8,672
|
|
17.06.2016, 20:18 | 5 |
vlad-crash, если для себя, то мой пример это пример как таке делают на 8ой джаве. В книгах обычно рассматривают более ранние версии языка
0
|
0 / 0 / 0
Регистрация: 29.02.2016
Сообщений: 14
|
|
17.06.2016, 22:00 [ТС] | 6 |
А если вообще смысл продолжать изучать устаревшую версию языка? Просто я это начал, чтобы дальше начать изучать и понимать Донн Фелкера или Эд бурнета про разработку мобильный приложений на Андроид.
0
|
2398 / 2223 / 565
Регистрация: 28.12.2010
Сообщений: 8,672
|
|
18.06.2016, 01:12 | 7 |
vlad-crash, насчет мобильных приложений и что у них там актуально лучше спросить в соотв. разделе.
0
|
636 / 528 / 165
Регистрация: 01.04.2010
Сообщений: 1,843
|
|
19.06.2016, 09:02 | 8 |
Не нужен тут массив вообще. Создаёшь один ExecutorService на нужное количество потоков. И в него передаёшь свои экземпляры Runnable.
Кликните здесь для просмотра всего текста
Количество потоков в сервисе не обязательно должно равняться количеству строк в матрице.
2
|
19.06.2016, 09:02 | |
19.06.2016, 09:02 | |
Помогаю со студенческими работами здесь
8
Получение значения из фонового потока и передача его в главный поток Биндинг в потоке: поток не может получить доступ к интерфейсу из другого потока Главный поток и вторичный BackgroundWorker блокирует главный поток Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |