繁体   English   中英

线程池和数据关联

[英]Thread pool and data affinity

我正在设计OMS,并尝试使用多线程技术来加快处理速度。

一种简单的方法是静态分配线程:对于所有证券,一个线程以一个字母开头。 显然,其中一些人可能很忙,而其他人则无事可做。 而且我们不预先知道用户将输入哪些股票。

所以我转向线程池。 现在,时间很可能在线程之间更均匀地分配。 但是要处理的开销是:我必须锁定每个订单,这当然不愉快。

关于如何最小化锁定时间并实现更高吞吐量的任何想法?

非常感谢您的建议。

PS,这是Unix环境。 使用的语言是C ++

通常,每个任务的线程是非常糟糕的决定。 最好的方法是将任务分为具有自己的线程池的逻辑组(或者每个任务可以有1个线程)。 另外,您还应该组织任务之间的通信,例如通过查询。 您是否在寻找现有的线程池实现,例如threadpool

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM