2016-04-07 2 views
0

Я хотел бы знать, можем ли мы управлять управляемой нитью из другого компонента. Скажем, у нас есть два java-модуля. В одном модуле (A) у меня есть runnable thread, который выполняет некоторую работу. Во втором модуле (B) я хочу получить к нему доступ и получить значения. Если оба компонента находятся в одном модуле, проблем нет. Но здесь оба являются отдельными модулями. Модуль A имеет потоки, тогда как модуль B зависит от модуля A и хочет получить к нему доступ.Есть ли способ управлять runnable thread из другого компонента?

Есть ли стандартная практика для этого? Или это плохой дизайн?

Редактировать: Модули/компоненты означают 2 проекта maven.

+0

Java не имеет понятия * модулей * сам по себе, поэтому вам нужно будет лучше объяснить, что вы имеете в виду. Слово * компонент * тоже довольно неоднозначно. – Kayaman

+0

Что вы подразумеваете под «контролем»? Если вы имеете в виду «invoke methods on», вы можете это сделать - вы можете сделать это везде, где есть ссылка на поток. –

+0

@ Кайаманские модули/компоненты означают 2 проекта maven. – Ratha

ответ

0

Вы можете использовать что-то вроде шины событий (например: Otto или GreenRobot) для связи и отправки-получения данных через ваши модули.

Но через некоторое время может быть очень сложно отслеживать, какое событие отправляется с какой части. Для эффективного использования шины событий вы можете проверить архитектуру Flux, которая мужественно используется в веб-приложениях. Для Android вы можете проверить this project и изменить его на основе ваших потребностей.

+0

Но я не хочу размещать служебную шину обмена сообщениями между двумя модулями. Ищет простой способ. благодаря – Ratha

Смежные вопросы