The asynchronous model is based on (Boost) Asio's universal model for asynchronous operations.
Each async function takes a CompletionToken
as it's last parameter. The completion token can be a callable with the signature void(T)
or void(T&)
where T
is a function-specific result type.
- See also
- https://think-async.com/asio/asio-1.28.0/doc/asio/overview/model/async_ops.html
-
https://think-async.com/asio/asio-1.28.0/doc/asio/overview/model/completion_tokens.html
-
https://www.open-std.org/jtc1/sc22/wg21/docs/papers/2013/n3747.pdf
|
template<typename T , typename Initiation , typename CompletionToken , typename... Args> |
auto | opcua::asyncInitiate (Initiation &&initiation, CompletionToken &&token, Args &&... args) |
|
◆ DefaultCompletionToken
◆ asyncInitiate()
template<typename T , typename Initiation , typename CompletionToken , typename... Args>
auto opcua::asyncInitiate |
( |
Initiation && | initiation, |
|
|
CompletionToken && | token, |
|
|
Args &&... | args ) |
◆ useFuture
◆ useDeferred
◆ useDetached