
Java多线程
文章平均质量分 61
在学习的小陈程序猿
工作了
展开
-
【Java多线程】锁
乐观锁:线程获取不到锁资源时,会将该线程挂起(BLOCKED,WAITING),涉及到用户态和内核态的切换,而这种切换是非常消耗资源的。不可重入锁:线程A拿到锁资源,此时线程A尝试再次拿取同一把锁资源,无法获取到,因为锁被自身占用着,需要等自己将锁释放才能再次获取到。悲观锁:线程获取不到锁资源时,会再次调度CPU重新尝试获取锁资源。独占锁:同一时刻,只有一个线程能获取到锁资源。可重入锁:同一个线程可以重复获取一把锁。可中断锁:抢占过程可以被中断的锁。共享锁:多个线程可以共享一把锁。原创 2023-07-21 11:58:24 · 200 阅读 · 0 评论 -
【Java多线程】并发容器
ConcurrentHashMap CopyOnWriteArrayList CopyOnWriteArraySet ConcurrentLinkedQueue oncurrentLinkedDueue ConcurrentSkipListMap ConcurrentSkipListSet ArrayBlockingQueue LinkedBlockingQueue LinkedBlockingDueue PriorityBlockingQueue SynchronousQueue LinkedTransf原创 2023-07-20 23:42:42 · 153 阅读 · 0 评论 -
【Java多线程】实现线程按顺序执行
【代码】【Java多线程】实现线程按顺序执行。原创 2023-07-20 22:57:57 · 302 阅读 · 0 评论 -
【Java多线程】面试题
线程池说明参考:https://blog.youkuaiyun.com/ChrisLee2013/article/details/131818811原创 2023-07-19 23:49:43 · 93 阅读 · 0 评论 -
【Java多线程】生命周期,线程状态,状态流转
抢占式调度模型:系统按照线程优先级分配CPU时间片。优先级高的线程优先分配CPU时间片,如果所有就绪线程的优先级相同,那么会随机选择一个,优先级高的线程获取的CPU时间片相对多一些。分时调度模型:系统平均分配CPU的时间片,所有线程轮流占用CPU,即在时间片调度的分配上所有线程“人人平等”。作用:放弃当前的CPU资源,让其他任务去抢占CUP资源(只会给相同优先级或者更高优先级的现场运行的机会)运行中的线程不一定一直都会是运行状态,没有获得时间片又会回到就绪状态。就绪线程抢占到CPU时间片会进入到运行状态。原创 2023-07-20 14:48:37 · 210 阅读 · 0 评论