YACLib
C++ library for concurrent tasks execution
Loading...
Searching...
No Matches
task_impl.cpp
Go to the documentation of this file.
1
#include <
yaclib/lazy/task.hpp
>
2
3
namespace
yaclib
{
4
namespace
detail {
5
6
void
Start
(
BaseCore
*
head
,
IExecutor
&
e
)
noexcept
{
7
head
=
MoveToCaller
(
head
);
8
head
->_executor = &
e
;
9
e
.Submit(*
head
);
10
}
11
12
void
Start
(
BaseCore
*
head
)
noexcept
{
13
head
=
MoveToCaller
(
head
);
14
head
->_executor->Submit(*
head
);
15
}
16
17
}
// namespace detail
18
19
template
class
Task<>
;
20
21
}
// namespace yaclib
yaclib::IExecutor
Definition
executor.hpp:8
yaclib::detail::BaseCore
Definition
base_core.hpp:20
task.hpp
yaclib::detail::MoveToCaller
YACLIB_INLINE BaseCore * MoveToCaller(BaseCore *head) noexcept
Definition
core.hpp:36
yaclib::detail::Start
void Start(BaseCore *head, IExecutor &e) noexcept
Definition
task_impl.cpp:6
yaclib
Definition
base_core.hpp:18
yaclib::MakeContract
Contract< V, E > MakeContract()
Creates related future and promise.
Definition
contract.hpp:25
src
lazy
task_impl.cpp
Generated by
1.9.8