并发编程的优缺点
使用并发编程的好处:
充分利用多核CPU的计算能力,方便进行业务拆分,提升应用性能
使用并发编程的缺点:
时间片是CPU分配给各个线程的时间,因为时间非常短,所以CPU不断通过切换线程,让我们觉得线程是同时执行的,时间片一般是几十毫秒.而每次切换时,需要将当前的状态保存起来,以便能够进行恢复先前的状态,而这个切换是非常消耗性能的,过于频繁的切换
反而无法发挥出多线程编程的优势.
解决的办法:
通常减少上下文切换采用无锁并发编程,CAS算法,使用最少的线程和协程.
使用并发编程的好处:
充分利用多核CPU的计算能力,方便进行业务拆分,提升应用性能
使用并发编程的缺点:
时间片是CPU分配给各个线程的时间,因为时间非常短,所以CPU不断通过切换线程,让我们觉得线程是同时执行的,时间片一般是几十毫秒.而每次切换时,需要将当前的状态保存起来,以便能够进行恢复先前的状态,而这个切换是非常消耗性能的,过于频繁的切换
反而无法发挥出多线程编程的优势.
解决的办法:
通常减少上下文切换采用无锁并发编程,CAS算法,使用最少的线程和协程.