Jave并发的艺术 并发编程的挑战 上下文切换 CPU通过时间片分配算法来循环执行任务,当前时间片执行完之后会切换到下一个任务.但是,切换会保存上一个任务的状态,一遍下次切换回这个任务时,可以再次加载这个状态.所以任务从保存到再加载的过程就是一次上下文切换. 如何减少上下文切换 减少上下文切换的方法有无锁并发编程.CAS算法.使用最少线程和使用协程 无锁并发编程:多线程竞争锁时,会引起上下文切换,所以多线程处理数据时,可以用一些办法避免使用锁,如将数据ID按照Hash算法取模分段,不同的线程处理…