摘要: package com.mozq.thread.interrupt; /** * 注意:调用interrupt()方法,并不会结束线程。 * 结束线程的语义:需要我们自己使用3个中断方法构建。 * * 没有任何语言方面的需求一个被中断的线程应该终止。 * 中断一个线程只是为了引起该线程的注意,被中断线程可以决定如何应对中断。 * 某些线程非常重要,以至于它们应该不理... 阅读全文
posted @ 2019-02-21 17:45 没有理由不会呀 阅读(184) 评论(0) 推荐(0) 编辑
摘要: package com.mozq.thread.interrupt; /** * 结束线程方法1:使用结束标志,但是当线程处于阻塞状态时,如果线程不退出阻塞状态,则无法检测退出标志,也就不能退出。 * @author jie * */ class StopThread implements Runnable{ private boolean exit = false; ... 阅读全文
posted @ 2019-02-21 16:46 没有理由不会呀 阅读(842) 评论(0) 推荐(0) 编辑
摘要: package com.mozq.thread.producer2; /* * 面试题2:以下代码是否存在错误 class ThreadTest implements Runnable{ public void run(Thread t){} } 结果:实现Runnable接口,但是没有覆盖接口中的run方法,应该被定义为抽象类。public void run(Thread t)和vo... 阅读全文
posted @ 2019-02-21 12:35 没有理由不会呀 阅读(178) 评论(0) 推荐(0) 编辑
摘要: package com.mozq.thread.producer2; import java.util.concurrent.locks.Condition; import java.util.concurrent.locks.Lock; import java.util.concurrent.locks.ReentrantLock; /** * 当使用等待时 * 如果用i... 阅读全文
posted @ 2019-02-21 11:00 没有理由不会呀 阅读(244) 评论(0) 推荐(0) 编辑