определённому условию корутину можно было бы отменить:
private var job: Job?
Как такое поле засинхронизировать, чтобы метод, который эту джобу стартует (через scope.launch{}), не становился suspend из-за мьютекса?
По сути надо, если метод вызвался, а джоба ещё исполняется, надо джобу отменить, стартовать новую и сохранить в это поле. И чтобы это было потокобезопасно.
Вероятно, вам подойдёт обычный synchronized
Обсуждают сегодня