C++异步编程之std::promise与std::future使用示例

1.创建promise对象:

std::shared_ptr> _discovery_promise = std::make_shared>();

2.获取promise对象的future实例

auto future = _discovery_promise->get_future();//2.异步对象中获取future实例

3.设置promise对象中的共享内存值

 _discovery_promise->set_value(true);//3.异步调用执行,设置操作标记

4.取future中的操作结果

//等待
    bool wait() { return _discovery_future.get(); }//读取异步执行结果

完整示例:

#pragma once

#include 
#include 
#include 

#include "connection_result.h"
#include "log.h"

namespace mavsdk {
namespace mavsdk_server {

template class ConnectionInitiator {
public:
    ConnectionInitiator() {}
    ~ConnectionInitiator

你可能感兴趣的:(C++,c++,开发语言)