![](https://img-blog.csdnimg.cn/20201014180756918.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
并发编程
云等风来
这个作者很懒,什么都没留下…
展开
-
初阶并发编辑之——线程状态与线程中断
在阻塞中终结 线程的六种状态(网上有说五种,Thinking in Java中说四种,我这里以jdk1.8的API为主,jdk1.5开始都是6种): 1)新建NEW 当线程Thread()被创建后,调用start()方法之前,尚未启动的线程处于此状态。 2)可运行RUNNABLE 线程调用start(),并占有CUP时间,在Java虚拟机中执行的线程处于此状态,但它可能正在原创 2017-12-19 21:03:42 · 189 阅读 · 0 评论 -
初阶并发编辑之——基本的线程机制
定义任务Runnable接口与Thread类 接口Runnable只有一个方法run(),其签名为:public void run()。可以发现方法run无参数,不返回任何值。一般用Runnable的实现类去描述任务,如下实例://from Thinking in Javaclass LiftOff implements Runnable{ protected int countDo原创 2017-12-13 22:23:32 · 167 阅读 · 0 评论 -
初阶并发编程之——运用wait()与notify()实现线程之间的协作
wait()与notifyAll() wait()方法和notifyAll()方法都属于Object类的final方法,即子类不可重写该方法。wait()正如字面等待的意思,导致当前线程等待,直到另一个线程调用该对象的notify()方法或notifyAll()方法。wait()与sleep()不同的是,wait()先将锁释放再去挂起线程,所以wait()必须再同步块或方法中调用。方法noti原创 2017-12-22 22:33:45 · 276 阅读 · 0 评论 -
初阶并发编辑之——共享受限资源
不正确的访问资源 我们先看一个例子:class addOne implements Runnable{ private static int value=0; @Override public void run() { //System.out.println(Thread.currentThread()); try { T原创 2017-12-14 22:04:40 · 238 阅读 · 0 评论 -
interrupt(),interrupted()与isInterrupted()
关于标题中的三种方法不再总结,主要是记下一个坑,在看《Java多线程编程核心技术》这本书中遇到的坑。我老老实实的打出文中测试代码运行,却得不到书中的结果。public class mythread extends Thread{ @Override public void run() { // TODO Auto-generated method stub sup...原创 2019-05-30 22:17:06 · 163 阅读 · 0 评论