promise-cpp
promise-cpp copied to clipboard
all()怎么获得之前每个Defer的返回值?
有没有例子? js里面是给then的参数是数组[value1, value2]
const makeRequest = () => { return promise1() .then(value1 => { return Promise.all([value1, promise2(value1)]); }) .then(([value1, value2]) => { return promise3(value1, value2); }); };
和js差不多,all 返回的Defer对象调用 then,参数是个 std::vector<pm_any> 数组。 pm_any可以包含任意类型的对象。
建议判断下是不是C++17,是的话就用std::any,不是的话再用pm_any吧 或者 using pm_any = std::any 类似这样
建议判断下是不是C++17,是的话就用std::any,不是的话再用pm_any吧 或者 using pm_any = std::any 类似这样
还有tuple,应该也可以改用标准库的。
主要原因是any/tuple涉及到一点类型推导,resolve/reject填入的参数要被后面的then匹配的函数抓到,匹配函数类型这里定制了一些 any/tuple的内容,我有些迁移不动,太复杂。