多线程编程
P_彭彭彭
这个作者很懒,什么都没留下…
展开
-
2-interrupt 与 interrupted 与 isInterrupted 介绍
interrupt //只是对线程进行一个标记 并不是真的退出 Thread.interrupted() //线程上面的静态方法 MyThreadSleep myThreadSleep = new MyThreadSleep(); myThreadSleep.start(); myThreadSleep....原创 2018-09-09 16:50:57 · 159 阅读 · 0 评论 -
1-JAVA线程池有关
1.为什么需要线程池线程频繁的创建销毁需要占用大在线程使用过程中的时候,线程结束后不会销毁,会将线程用来执行别的任务。 java.uitl.concurrent.ThreadPoolExecutor类是线程池中最核心的一个类,因此如果要透彻地了解Java中的线程池,必须先了解这个类。下面我们来看一下ThreadPoolExecutor类的具体实现源码。 在ThreadPoolEx...转载 2018-08-23 11:58:06 · 198 阅读 · 0 评论 -
3-分布式锁的实现
一 、 使用redis 实现分布式锁 使用步骤 1.setnx(lockkey,1) 如果返回 0 说明失败,返回1 说明成功。 2. 使用expire() 设置超时时间,避免死锁 3.执行完代码以后使用 delete 命令删除 key 缺点: 当第一步执行成功以后,这时候如果机器宕机,这样的话 会造成死...原创 2018-09-13 21:26:50 · 125 阅读 · 0 评论 -
4-多线程之间通信
http://ifeve.com/thread-signaling/#shared_object1.调用notify() 与 notifyAll() 需要对再锁上面进行调用,也就是需要在同步代码块中调用。一个线程一旦调用了任意对象的wait()方法,就会变为非运行状态,直到另一个线程调用了同一个对象的notify()方法。为了调用wait()或者notify(),线程必须先获得那个对象的锁...转载 2018-10-08 20:09:48 · 115 阅读 · 0 评论 -
5-线程优先级
1.线程的优先级可以继承 总结:在java 中线程优先级具有继承性,A启动B线程,B线程的优先级是和A线程一样的(理解:很好理解,若不一样A线程难道还要,执行到B线程的地方不在执行,等待优先级高的线程执行完毕再执行当前线程,这样也不合适啊) 样例:public class Thread2 extends Thread { @Override pub...原创 2018-10-08 20:07:06 · 144 阅读 · 0 评论