计算密集型的程序使用多线程可以提高性能吗?C++
PHP中文网
PHP中文网 2017-04-17 13:17:09
0
2
817

没有大量的IO操作,主要是占用CPU,单核多核情况都有。C++11 thread
描述的不太清楚,其实想问的是如果我创建多个线程,这些线程的分配是怎样的?

PHP中文网
PHP中文网

认证0级讲师

全部回覆(2)
阿神

多執行緒不就是用來處理高並發的麼?這樣會提高處理速度啊,不然單線程處理到何年何月了

大家讲道理

cluster和pipeline模式.
cluster模式適用於任務比較難拆分, 但是任務與任務之間沒有關聯, 比如zip文件, 多個文件之間並沒有關聯, 那麼我可以開四五個線程去zip不同的檔案.
pipeline模式, 適用於那些任務先後順序可以拆分的, 把費時的操作抽出來, 用線程處理. 用那個zip文件的例子, 一個線程用來控制zip任務的分發, 多個線程去zip, zip好之後, 交給另外一個線程. 這個完整的任務, 就被拆分成3個階段, 這種模式就是pipeline.

你的業務需要靈活運用這兩種最基本的設計模式

熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板