Форум программистов, компьютерный форум CyberForum.ru

Программирование Android

Войти
Регистрация
Восстановить пароль
 
powowstal
28 / 28 / 4
Регистрация: 21.03.2013
Сообщений: 304
#1

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

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

Есть 2 потока запущенные разными классами и из потока А нужно сообщить потоку Б что бы он запустил свою определенную функцию. Ссылки на объект естественно нет (. Может есть какие то средства общения потоков, кроме внешних хранилищ?
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Pablito
2458 / 1903 / 591
Регистрация: 12.05.2014
Сообщений: 6,711
Завершенные тесты: 1
21.07.2016, 14:07     Передать данные в работающий thread из другого thread #2
https://github.com/greenrobot/EventBus
powowstal
28 / 28 / 4
Регистрация: 21.03.2013
Сообщений: 304
21.07.2016, 17:56  [ТС]     Передать данные в работающий thread из другого thread #3
Паблито, а если нет контекста (context) (
Pablito
2458 / 1903 / 591
Регистрация: 12.05.2014
Сообщений: 6,711
Завершенные тесты: 1
21.07.2016, 17:57     Передать данные в работающий thread из другого thread #4
ссылку вообще читал?
вопрос риторический, и так ясно что не читал
powowstal
28 / 28 / 4
Регистрация: 21.03.2013
Сообщений: 304
21.07.2016, 18:19  [ТС]     Передать данные в работающий thread из другого thread #5
Паблито,
Цитата Сообщение от Паблито Посмотреть сообщение
ссылку вообще читал?
читал, там написано регистрация автобуса - eventBus.register(this);
А в моем потоке нет контекста "this" - не присуцтвует, в этом и беда.
Pablito
2458 / 1903 / 591
Регистрация: 12.05.2014
Сообщений: 6,711
Завершенные тесты: 1
21.07.2016, 18:26     Передать данные в работающий thread из другого thread #6
this это указатель на текущий объект
powowstal
28 / 28 / 4
Регистрация: 21.03.2013
Сообщений: 304
21.07.2016, 18:45  [ТС]     Передать данные в работающий thread из другого thread #7
Паблито, сор, уже разобрался ).
Но факт в том что его у меня нет. Короче без ссылки я не как не достучусь к работающему потоку?
Pablito
2458 / 1903 / 591
Регистрация: 12.05.2014
Сообщений: 6,711
Завершенные тесты: 1
21.07.2016, 18:49     Передать данные в работающий thread из другого thread #8
рекомендую не тупить и потратить часик-два на изучение этой библиотеки - это пожалуй лучшее, что есть на рынке
перебрасывание событиями между потоками с помощью нее решается на ура, I guarantee it
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
22.07.2016, 15:36     Передать данные в работающий thread из другого thread
Еще ссылки по теме:
Обмен информацией с Thread Android
Android Android UiThread (UI thread)
The application may be doing too much work on its main thread Android
Android FATAL EXCEPTION: pool-1-thread-5
Android Потоки, asyncTask или thread?

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

Или воспользуйтесь поиском по форуму:
powowstal
28 / 28 / 4
Регистрация: 21.03.2013
Сообщений: 304
22.07.2016, 15:36  [ТС]     Передать данные в работающий thread из другого thread #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 ?
Yandex
Объявления
22.07.2016, 15:36     Передать данные в работающий thread из другого thread
Ответ Создать тему
Опции темы

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