Форум программистов, компьютерный форум, киберфорум
Наши страницы
Программирование Android
Войти
Регистрация
Восстановить пароль
 
powowstal
30 / 30 / 5
Регистрация: 21.03.2013
Сообщений: 369
1

Передать данные в работающий thread из другого thread

21.07.2016, 14:04. Просмотров 253. Ответов 8
Метки нет (Все метки)

Есть 2 потока запущенные разными классами и из потока А нужно сообщить потоку Б что бы он запустил свою определенную функцию. Ссылки на объект естественно нет (. Может есть какие то средства общения потоков, кроме внешних хранилищ?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
21.07.2016, 14:04
Ответы с готовыми решениями:

Как передать данные в thread?
Доброго всем дня) Прошу совета. Есть активити. Она запускает сервис,в котором...

Как вытащить данные из потока. Cant create handler inside thread that has not called Looper.prepare()
В общем столкнулся со следующей неприятной проблемой. Есть клиент. Он...

Как передать данные в Activity из другого класса
При нажатии на кнопку, создается активити orgAdapter = new OrgAdapter(this,...

Остановить Thread
Гуру, помогите кодом! Есть активити, которое заполняется из потока Поток...

использование thread
при нажатии должен срабатывать episodes и появляться новый layout поверх...

8
Pablito
2731 / 2166 / 735
Регистрация: 12.05.2014
Сообщений: 7,579
Завершенные тесты: 1
21.07.2016, 14:07 2
https://github.com/greenrobot/EventBus
1
powowstal
30 / 30 / 5
Регистрация: 21.03.2013
Сообщений: 369
21.07.2016, 17:56  [ТС] 3
Паблито, а если нет контекста (context) (
0
Pablito
2731 / 2166 / 735
Регистрация: 12.05.2014
Сообщений: 7,579
Завершенные тесты: 1
21.07.2016, 17:57 4
ссылку вообще читал?
вопрос риторический, и так ясно что не читал
0
powowstal
30 / 30 / 5
Регистрация: 21.03.2013
Сообщений: 369
21.07.2016, 18:19  [ТС] 5
Паблито,
Цитата Сообщение от Паблито Посмотреть сообщение
ссылку вообще читал?
читал, там написано регистрация автобуса - eventBus.register(this);
А в моем потоке нет контекста "this" - не присуцтвует, в этом и беда.
0
Pablito
2731 / 2166 / 735
Регистрация: 12.05.2014
Сообщений: 7,579
Завершенные тесты: 1
21.07.2016, 18:26 6
this это указатель на текущий объект
0
powowstal
30 / 30 / 5
Регистрация: 21.03.2013
Сообщений: 369
21.07.2016, 18:45  [ТС] 7
Паблито, сор, уже разобрался ).
Но факт в том что его у меня нет. Короче без ссылки я не как не достучусь к работающему потоку?
0
Pablito
2731 / 2166 / 735
Регистрация: 12.05.2014
Сообщений: 7,579
Завершенные тесты: 1
21.07.2016, 18:49 8
рекомендую не тупить и потратить часик-два на изучение этой библиотеки - это пожалуй лучшее, что есть на рынке
перебрасывание событиями между потоками с помощью нее решается на ура, I guarantee it
0
powowstal
30 / 30 / 5
Регистрация: 21.03.2013
Сообщений: 369
22.07.2016, 15:36  [ТС] 9
Паблито, Спс за ссылку, помогло - когда разобрался).
Но не совсем понял о модах на слушатель:
Java
1
1 @Subscribe(threadMode = ThreadMode.POSTING)
- способ для того же потока в котором происходит событие?
Java
1
2 @Subscribe(threadMode = ThreadMode.MAIN)
- понятно для UI
Java
1
3 @Subscribe(threadMode = ThreadMode.BACKGROUND)
- для любого Tread?
Java
1
4 @Subscribe(threadMode = ThreadMode.ASYNC)
- для Asynctask, AsyncLoader ... ?

И еще интересно на снове чего EventBus работает, что лежит в его основе может Intent, broadcastreceiver ?
0
22.07.2016, 15:36
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
22.07.2016, 15:36

Thread.sleep()
Вообщем, проблемма вот в чем. Я пытаюсь заставить "заснуть" программу, в...

Android UiThread (UI thread)
кто-нибудь может объяснить , что это такое и как используется на примере?

Обмен информацией с Thread
Всем привет! Приложение запускает Thread для выполнения некоторой работы....


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
9
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru