41 -> std::optional<std::chrono::steady_clock::duration> {
43 auto maybe_task = queue_.Get();
44 if (std::holds_alternative<std::monostate>(maybe_task)) {
49 if (std::holds_alternative<Task>(maybe_task)) {
51 std::get<Task>(maybe_task)();
55 if (std::holds_alternative<std::chrono::steady_clock::duration>(
57 return std::get<std::chrono::steady_clock::duration>(maybe_task);