Java多线程编程核心技术笔记
「已注销」
这个作者很懒,什么都没留下…
展开
-
第五章——定时器Timer
定时器Timer Timer类主要作用是是在指定的时间开始执行某一任务,而负责封装任务的是TimerTask类(抽象类),我们将执行计划任务的代码放入TimerTask的子类中。 schedule(TimerTask task, Date time)方法 该方法可以规定任务执行的时间 public class Run1 { private static Timer timer =...原创 2020-03-25 14:38:29 · 274 阅读 · 0 评论 -
第四章——Lock的使用
ReentrantLock类 ReentrantLock类能达到synchronized关键字的效果,且它的扩展功能更多。 lock()方法与unlock()方法 通过ReentrantLock对象lock()方法获得锁,unlock()方法释放锁。 public class myTask { private Lock lock = new ReentrantLock(); ...原创 2020-03-25 12:10:38 · 173 阅读 · 0 评论 -
第三章——线程通信
wait/notify机制 wait() 方法wait()是Object类的方法,它的作用是使当前执行代码的线程进行等待,它会在wait()所在的代码行出停止执行,直到接到通知或被中断;它只能在同步方法或同步代码块中使用,若在调用时没有持有适当的锁,则会抛出IllegalMonitorStateException,它是RuntimException的一个子类,不需要try=catch语句捕捉...原创 2020-03-24 15:25:31 · 112 阅读 · 0 评论 -
第二章——对象及变量的并发访问
synchronized同步方法 非线程安全是指在多个线程对同一对象中的实例变量进行访问发生,产生的后果是”脏读“,即读取到的数据其实是被修改过的。 如果是方法内部的私有变量,则不会存在此问题。 public class ThreadA extends Thread{ private HasSelfNum numRef; public ThreadA(HasSelfNum...原创 2020-03-23 18:09:11 · 93 阅读 · 0 评论 -
第一章与第七章——概述
Java多线程 进程和线程 进程:即为OS中运行的程序,它是OS管理的基本运行单元。 线程:进程中独立运行的子任务。例如在QQ运行时,有很多子任务在同时运行,比如好友视频线程,下载文件线程,传输数据线程等等。 多线程的优点 在使用多任务OS中,我们可以最大限度地利用CPU的空闲时间处理其他任务,即CPU在不同任务之间不停切换。而使用多线程技术后,可以在同一时间内运行更多不同种类的任...原创 2020-03-23 18:08:47 · 104 阅读 · 0 评论