• poco异步等待ActiveResult


    #include "Poco/ActiveMethod.h"
    #include "Poco/ActiveResult.h"
    #include <utility>
    #include <iostream>

    using Poco::ActiveMethod;
    using Poco::ActiveResult;

    class ActiveAdder
    {
    public:
        ActiveAdder(): add(this, &ActiveAdder::addImpl)
        {
        }

        ActiveMethod<int, std::pair<int, int>, ActiveAdder> add;

    private:
        int addImpl(const std::pair<int, int>& args)
        {
            return args.first + args.second;
        }
    };

    int main(int argc, char** argv)
    {
        ActiveAdder adder;

        ActiveResult<int> sum = adder.add(std::make_pair(1, 2));
        // do other things
        for(int i=0;i<10;++i)
            std::cout<<i+1<<std::endl;
    //    sum.wait();
        while(sum.available())
            break;
        std::cout << sum.data() << std::endl;

        return 0;
    }

    生活的残酷,让我们习惯了忘记疲倦,一直奔向远方,追寻着自己的梦想。
  • 相关阅读:
    UG二次开发-CAM-获取修改路径参数
    多线程01
    MFC的对话框使用Scintilla
    CATIA的后处理
    win32窗体中使用Scintilla窗体
    string的reserve和resize
    前端宝典
    MarkDown学习
    JAVA中构造方法总结
    IDEA中maven和tomcat的配置
  • 原文地址:https://www.cnblogs.com/L-Arikes/p/4969536.html
Copyright © 2020-2023  润新知