Future sleepWhile(bool Function() predict, [Duration duration = const Duration(milliseconds: 50)]) async { while (predict()) { await sleepAsync(duration); } }