
多线程
java多线程
卜思凡
这个作者很懒,什么都没留下…
展开
-
锁的四种状态及升级过程
1.锁的四种状态在 synchronized 最初的实现方式是 “阻塞或唤醒一个Java线程需要操作系统切换CPU状态来完成,这种状态切换需要耗费处理器时间,如果同步代码块中内容过于简单,这种切换的时间可能比用户代码执行的时间还长”,这种方式就是 synchronized实现同步最初的方式,这也是当初开发者诟病的地方,这也是在JDK6以前 synchronized效率低下的原因,JDK6中为了减少获得锁和释放锁带来的性能消耗,引入了“偏向锁”和“轻量级锁”。所以目前锁状态一种有四种,从级别由低到高依次是原创 2020-07-19 19:17:09 · 2606 阅读 · 0 评论 -
线程池
1.使用线程池的好处池化技术相比大家已经屡见不鲜了,线程池、数据库连接池、Http 连接池等等都是对这个思想的应用。池化技术的思想主要是为了减少每次获取资源的消耗,提高对资源的利用率。降低资源消耗。重复利用线程降低线程创建和销毁造成的消耗。提高响应速度。当任务到达时,任务可以不需要的等到线程创建就能立即执行。提高线程的可管理性。线程是稀缺资源,如果无限制的创建,不仅会消耗系统资源,还会降低系统的稳定性,使用线程池可以进行统一的分配,调优和监控。2.线程池七大参数corePoolSize:原创 2020-07-18 22:03:56 · 111 阅读 · 0 评论 -
多线程基本操作
1.创建线程的四种方式1)继承Thread类创建线程自定义线程类继承Thread类,重写run()方法,编写线程执行体,创建线程对象,调用start()方法启动线程2)实现Runnable接口创建线程自定义线程类实现Runnable接口实现run()方法,编写线程执行体创建线程对象,调用start()方法启动线程3)使用Callable和Future创建线程1.实现Callable接口,重写call()方法,创建该实现类的实例2.使用FutureTask类来包装Callable原创 2020-07-10 21:09:37 · 274 阅读 · 0 评论