![](https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
并发编程
文章平均质量分 92
一个bug玩一天
这个作者很懒,什么都没留下…
展开
-
java锁
synchronized(重量级)和ReentrantLock(轻量级) 重入锁 都具有可重入性 读写锁(lock)-轻量级 悲观锁和乐观锁 乐观锁:本质没有锁,效率比较高、无阻塞、无等待、重试。—CAS无锁机制 总是认为不会产生并发问题,每次去取数据的时候总认为不会有其他线程对数据进行修改,因此不会上锁,但是在更新时会判断其他线程在这之前有没有对数据进行修改,一般会使用版本号机制或CAS操作实现。 version方式:一般是在数据表中加上一个数据版本号version字段,表示数据被修改的次数,当数原创 2020-09-27 14:28:15 · 107 阅读 · 0 评论 -
多线程的创建
继承Thread类。重写run方法 class CreateThread extends Thread { // run方法中编写 多线程需要执行的代码 publicvoid run() { for (inti = 0; i< 10; i++) { System.out.println("i:" + i); } } } public class ThreadDemo { public static void main(String[] args) { System.o.原创 2020-07-12 19:27:02 · 85 阅读 · 0 评论 -
线程池的四种实现以及原理剖析
什么是线程池? Java中的线程池是运用场景最多的并发框架,几乎所有需要异步或并发执行任务的程序 都可以使用线程池。在开发过程中,合理地使用线程池能够带来3个好处。 第一:降低资源消耗。通过重复利用已创建的线程降低线程创建和销毁造成的消耗。 第二:提高响应速度。当任务到达时,任务可以不需要等到线程创建就能立即执行。 第三:提高线程的可管理性。线程是稀缺资源,如果无限制地创建,不仅会消耗系统资源, 还会降低系统的稳定性,使用线程池可以进行统一分配、调优和监控。但是,要做到合理利用 线程池,必须对其实现原理.原创 2020-07-12 19:12:02 · 941 阅读 · 0 评论