
线程
文章平均质量分 95
一位懒得写博客的小学生
这个作者很懒,什么都没留下…
展开
-
Java核心---线程进阶
乐观锁 VS 悲观锁 乐观锁:(CAS(比较并且交换)、ABA、JUC) 乐观锁假设认为数据一般情况下不会产生并发冲突,所以在数据进行提交更新的时候,才会正式对数据是否产生并发冲突进行检测,如果发现并发生冲突了,则让返回用户错误的信息,让用户决定如何去做。 悲观锁:(synchronized) 总是假设最坏的情况,每次去拿数据的时候都认为别人会修改,所以每次在拿数据的时候都会上锁,这样别人想拿这个数据就会阻塞直到它拿到锁。 悲观锁的问题: 总是需要竞争锁,进而导致发生线程切换,挂起其他线程;所以性能不高;原创 2021-05-27 23:10:51 · 268 阅读 · 1 评论 -
常见线程池详解(一篇足以)
线程的缺点 线程的创建需要开辟内存资源:本地方法栈、虚拟机栈、程序计数器等线程私有变量的内存,频繁的创建和消耗会带来一定的性能开销; 使用线程不能很好的管理任务和有好的拒绝任务; 线程池 定义:使用池化技术来管理和使用线程的技术就叫做线程池。 线程池的创建方式 第一种 创建固定个数的线程池 线程池的执行流程:当拿到一个任务后,会判断当前线程池里面的线程数量是否达到最大值,如果有达到创建新的线程执行任务;当任务来了后 线程池里面包含的重要内容(2个) 线程 队列 schedule 区别 没有延迟执行的时原创 2021-05-20 22:53:15 · 191 阅读 · 0 评论 -
Java核心知识---初识线程
最早的并发编程是多进程并发编程。 多个进程不能共享资源。 线程(Thread) 进程是系统分配资源的最小单位,线程是系统调度的最小单位。一个进程内的线程之间是可以共享资源的; 一个进程内最少包含一个线程,即主线程; 线程必须依附进程才能存活。 进程不可以共享资源,而线程可以。 线程可以共享的资源 打开的文件 内存(对象) 线程不可共享的资源 线程栈信息 优先级 注意:当线程的数量达到某个合适的值是最好的,如果太多的线程,就会出现线程之间的争抢和CPU的过度调度问题了,而CPU调度是需要消耗系统资源的原创 2021-04-26 16:45:42 · 189 阅读 · 0 评论