簡體   English   中英

使用C ++異步進行並行編程

[英]Parallel programming with c++ async

有什么方法可以設置異步功能(從將來開始)可以創建的最大線程數? 我更喜歡使用async / future.get,因為它可以轉換為同步/生成多任務模型,這在有關Alghoritms(即Cormen)的教科書中很常見。 我希望能夠獲得T [p](使用p個處理器/線程來完成程序的時間)。

抱歉不行。 眾所周知, std::async的控件受到限制,它為您提供了如何創建線程的控制。

您可能考慮使用增強線程池。 這是boost asio的一部分(在某種程度上是直觀的),並且使用io_service對象,即使/如果您實際上並未將其用於I / O。

有了它,控制使用的線程數非常容易,包括僅使用一個。

當然,您可以根據標准組件構建自己的線程池類。 當然有可能,但並非完全無關緊要的任務。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM