在大多数终端上(当然,除了Windows的cmd.exe之外),可以使用\033
ANSI转义序列对输出进行着色.
现在我正在寻找所有支持的颜色和选项列表(如明亮和闪烁).
由于支持它们的终端之间可能存在一些差异:我主要对xterm兼容终端支持的序列感兴趣.
我有一个程序,目前需要很长时间才能使用 来总结std::vector
约 1 亿个元素的大数据std::accumulate
,这是一个瓶颈。
我希望它更快,并且我希望它是异步计算,这样 GUI/服务器就不会阻塞。计算还应该使用多线程,这样我就可以减少求和向量所需的时间。
我想将求和分开,以便每个线程对向量的一部分求和,然后在计算所有部分和时,应将每个线程的部分和加在一起以获得总和。
我想知道如何在Boost.Asio中解决这个问题?理想情况下,我的程序需要重用线程(如线程组),不确定如何存储和检索部分总和并最终检索部分总和的总和。
我正在考虑创建一个调用 的线程组boost::asio::io_service::run
,传递一个处理程序来计算部分和,但我不确定如何将部分和传递给另一个处理程序并将所有部分和加在一起。
如果有人展示一些我如何解决这个问题的框架代码,那就太好了。