84669 人学习
152542 人学习
20005 人学习
5487 人学习
7821 人学习
359900 人学习
3350 人学习
180660 人学习
48569 人学习
18603 人学习
40936 人学习
1549 人学习
1183 人学习
32909 人学习
没有大量的IO操作,主要是占用CPU,单核多核情况都有。C++11 thread描述的不太清楚,其实想问的是如果我创建多个线程,这些线程的分配是怎样的?
认证0级讲师
多线程不就是用来处理高并发的么?这样会提高处理速度啊,不然单线程处理到何年何月了
cluster和pipeline模式.cluster模式适用于任务比较难拆分, 但是任务与任务之间没有关联, 比如zip文件, 多个文件之间并没有关联, 那么我可以开四五个线程去zip不同的文件.pipeline模式, 适用于那些任务先后顺序可以拆分的, 把费时的操作抽出来, 用线程处理. 用那个zip文件的例子, 一个线程用来控制zip任务的分发, 多个线程去zip, zip好之后, 交给另外一个线程. 这个完整的任务, 就被拆分成3个阶段, 这种模式就是pipeline.
你的业务需要灵活运用这两种最基本的设计模式
多线程不就是用来处理高并发的么?这样会提高处理速度啊,不然单线程处理到何年何月了
cluster和pipeline模式.
cluster模式适用于任务比较难拆分, 但是任务与任务之间没有关联, 比如zip文件, 多个文件之间并没有关联, 那么我可以开四五个线程去zip不同的文件.
pipeline模式, 适用于那些任务先后顺序可以拆分的, 把费时的操作抽出来, 用线程处理. 用那个zip文件的例子, 一个线程用来控制zip任务的分发, 多个线程去zip, zip好之后, 交给另外一个线程. 这个完整的任务, 就被拆分成3个阶段, 这种模式就是pipeline.
你的业务需要灵活运用这两种最基本的设计模式