【技术实现步骤摘要】
一种多线程同步并发的方法及系统
本专利技术涉及多线程处理
,具体涉及一种多线程同步并发的方法及系统。
技术介绍
在多线程并发时,为了实现多线程间的同步,需要用到锁技术,常用的锁技术有自旋锁、互斥锁、信号量。常用的锁技术存在的缺点为:自旋锁对CPU耗费较高。互斥锁可以解决线程间同步问题,但互斥锁在多线程高并发时无法保证在每个申请锁的线程机会均等,会出现某个线程持续等待锁的现象。信号量可以保证线程获取锁的顺序,即优先申请锁的线程会优先获取锁,但在高并发时会导致并发性能急剧下降。
技术实现思路
针对现有技术中存在的上述问题,本专利技术提供一种多线程同步并发的方法及系统。本专利技术公开了一种多线程同步并发的方法,包括:生成多个初级锁和一个终极锁,所述初级锁与终极锁形成两级锁机制;根据所述初级锁的数量对并发线程进行分组;各分组内的各线程申请对应初级锁,其中一个线程获得到初级锁;各分组内获得到初级锁的线程申请终极锁,其中一个线程获得到终极锁 ...
【技术保护点】
1.一种多线程同步并发的方法,其特征在于,包括:/n生成多个初级锁和一个终极锁,所述初级锁与终极锁形成两级锁机制;/n根据所述初级锁的数量对并发线程进行分组;/n各分组内的各线程申请对应初级锁,其中一个线程获得到初级锁;/n各分组内获得到初级锁的线程申请终极锁,其中一个线程获得到终极锁;/n获得到终极锁的线程进入工作。/n
【技术特征摘要】
1.一种多线程同步并发的方法,其特征在于,包括:
生成多个初级锁和一个终极锁,所述初级锁与终极锁形成两级锁机制;
根据所述初级锁的数量对并发线程进行分组;
各分组内的各线程申请对应初级锁,其中一个线程获得到初级锁;
各分组内获得到初级锁的线程申请终极锁,其中一个线程获得到终极锁;
获得到终极锁的线程进入工作。
2.如权利要求1所述的方法,其特征在于,所述并发线程的数量大于所述初级锁的数量。
3.如权利要求1所述的方法,其特征在于,所述根据所述初级锁的数量对并发线程进行分组,包括:
获得初级锁数量;
根据并发线程的线程号对初级锁数量进行取模得到锁号;
同一锁号的线程为一组。
4.一种多线程同...
【专利技术属性】
技术研发人员:张志永,
申请(专利权)人:北京思特奇信息技术股份有限公司,
类型:发明
国别省市:北京;11
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。