Tag: 异步

C++的异步编程: std::future, std::async 和 std::promise

在 C++ 中,std::future 和 std::async 是 C++11 标准 并发库的一部分。它们允许您异步/Asynchronous运行任务并在稍后获取结果,非常适合编写非阻塞代码和并行化计算。以下是它们的工作原理和典型用法。 C++ std::async std::async 是一个高级函数,允许您异步启动一个任务(一个可调用对象,如函数或 lambda)。您指定要运行的函数,std::async 返回一个表示该 函数结果的 std::future。您可以稍后获取该结果,无论是任务完成时还是您需要时。 #include <iostream> #include <future> #include <chrono> int compute() { std::this_thread::sleep_for(std::chrono::seconds(2)); // 模拟工作 …

用异步来提高性能 (SteemIt)

我注意到一些STEEMIT在线工具返回数据很慢, 特别是当返回的数据很多行时, 经常需要等个几十秒, 非常的不友好. 比如, 现有138人代理给YY银行, 通过 这个代理查询工具 则需要几十秒才能返回数据. 今天我稍微研究了一下, 发现在使用 steem-python中的 converter 特别的慢. steem = Steem(nodes = steem_nodes) converter = Converter(steemd_instance = steem) while some loop: r.append( "sp": …

通过 Crontab 后台/异步定时发邮件

很多人设计 WEB 应用的时候会需要这么一个给用户 发邮件的功能. 这时候就可以通过 类似 PHPMailer 这种开源的类来即时的发邮件. 这有个不好的地方就是 因为是同步发送方式, 页面在邮件发出去之前 会卡住 而且会造成服务器的负担 可扩展性并不强 (如果一天数以万计的邮件需要发 那么高峰期服务器定不能胜任). 最好的设计方法是后台异步的发邮件, 那么我们首先需要一个SQL表格来存放待发送的邮件: -- phpMyAdmin SQL Dump -- version 4.2.6 -- http://www.phpmyadmin.net -- -- …