SideEffect
не поддерживает обработку ошибок. Если это терпит неудачу, это по существу блокирует выполнение рабочего процесса (путем паники задачи решения). Он также выполняется в той же процедуре, что и код рабочего процесса.
LocalActivity
выполняется в отдельной процедуре и поддерживает обработку ошибок, включая автоматические повторные попытки через RetryOptions
.
Поэтому используйте SideEffect
только для операций с очень коротким сроком службы, которые, как ожидается, не потерпят неудачу. Или, если они терпят неудачу, все в порядке, чтобы заблокировать выполнение рабочего процесса. Генерация UUID является хорошим примером такой операции.