Мы разрабатываем приложение для Android, которое отправляет обновления пользователям нашего приложения. Обновления публикуются на нашем сервере из консоли администратора (приложение JAVA SWING), а затем сохраняются в базе данных. После того, как данные будут успешно вставлены в базу данных, мы хотим отправить одно и то же обновление каждому пользователю приложения через push-уведомление GCM. Поскольку мы хотим построить систему для обслуживания миллионов людей, мы хотели бы использовать многопоточность (может быть, с помощью службы исполнителя) для отправки уведомлений. GCM может быть отправлен на 1000 устройств (давайте назовем это группой) одновременно. Поэтому нам нужно сначала составьте список групп (каждая группа содержит 1000 gcmids). Таким образом, серия задач будет следующей: 1. Вставьте данные в БД 2. Создайте список групп 3. Затем отправьте уведомление каждой группе
Шаг 3 — это то место, где мы планируем использовать многопоточность. Но я хочу вернуться после самого шага 1, чтобы клиент получил ответ (JAVA SWING APP должен быть определенно инициирован относительно того, вставлены ли данные в БД или нет, и он не заинтересован в успехе GCM толчок)
Итак, как мне спроектировать такие вещи, чтобы они возвращались с шага 1, а следующие 2 должны выполняться в основном потоке, а шаг 3 должен быть достигнут с использованием многопоточности.