MCPcopy Create free account
hub / github.com/NVIDIA/stdexec / start

Function start

include/exec/async_scope.hpp:398–419  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

396 }
397
398 constexpr void start() & noexcept
399 {
400 STDEXEC_TRY
401 {
402 if (!!__state_)
403 {
404 std::unique_lock __guard{__state_->__mutex_};
405 if (__state_->__data_.index() != 0)
406 {
407 __guard.unlock();
408 __complete_();
409 }
410 else
411 {
412 __state_->__subscribers_.push_back(this);
413 }
414 }
415 }
416 STDEXEC_CATCH_ALL
417 {
418 STDEXEC::set_error(static_cast<_Receiver&&>(__rcvr_), std::current_exception());
419 }
420 }
421 };
422

Callers 15

startMethod · 0.70
startMethod · 0.70
__repeatMethod · 0.70
startMethod · 0.70
__notify_waiterMethod · 0.70
startMethod · 0.70
startMethod · 0.70
__debug_sequence_senderFunction · 0.70
startMethod · 0.70
__repeatMethod · 0.70
submitMethod · 0.70
startMethod · 0.70

Calls 3

set_errorFunction · 0.70
indexMethod · 0.45
push_backMethod · 0.45

Tested by

no test coverage detected