Хорошо ли использовать BroadcastReseiver для вывода данных из потока в UI?
На данный момент я использую такую структуру из списка RecyclerView запускается ForegroundService из которого через ServiceHandler новый поток, вот только для остановки и возврата динамически меняющихся данных я использую BroadcastReseiver, принципе это работает несмотря на сложности в реализации, объясню каждому такому потоку при запуске приходится присваивать уникальный id который возвращается в UI с нужными данными через BroadcastReseiver, так же происходит и управление работой потока. Все это приводит к сбоям и увеличению кода в ходе решения проблем. Просто это единственный способ который я нашел, но как мне кажется такой подход совсем не профессиональный. Была идея использовать физический файл как мост для передачи данных, но такой вариант помоему еще хуже.
Приложение: RecyclerView где в каждом блоке есть TextView и 2 кнопки Старт/Стоп, таких блоков несколько. Т.е. нажимаю старт запускается отдельный поток и возвращает результат работы в свой блок UI. И так каждый блок.