随笔分类 -  java并发

摘要:```java public class DaemonTheadDemo { public static void main(String[] args){ Thread thread = new Thread(new Runnable() { @Override public void run() { for (; ;) { } } }); thread.start(); //thread.se 阅读全文
posted @ 2019-08-17 09:08 fly_bk 阅读(308) 评论(0) 推荐(0)
摘要:demo2 阅读全文
posted @ 2019-08-16 14:49 fly_bk 阅读(96) 评论(0) 推荐(0)
摘要:补充案例: 阅读全文
posted @ 2019-08-16 10:49 fly_bk 阅读(160) 评论(0) 推荐(0)
摘要:` Thread.yield()方法的作用:暂停当前正在执行的线程,并执行其他线程。(可能没有效果) yield()让当前正在运行的线程回到可运行状态,以允许具有相同优先级的其他线程获得运行的机会。因此,使用yield()的目的是让具有相同优先级的线程之间能够适当的轮换执行。但是,实际中无法保证yi 阅读全文
posted @ 2019-08-16 09:34 fly_bk 阅读(189) 评论(0) 推荐(0)
摘要:```java import java.util.concurrent.locks.Lock; import java.util.concurrent.locks.ReentrantLock; public class SleepDemo { //创建一个独占锁 private static final Lock lock = new ReentrantLock(); public static 阅读全文
posted @ 2019-08-16 09:08 fly_bk 阅读(298) 评论(0) 推荐(0)
摘要:join加入 java public class JoinDemo { public volatile static int i = 0; public static class AddThread extends Thread{ @Override public void run() { for 阅读全文
posted @ 2019-08-16 08:41 fly_bk 阅读(246) 评论(0) 推荐(0)
摘要:wait()、notify、notifyAll()方法 wait()、notify()、notifyAll()是三个定义在Object类里的方法,可以用来控制线程的状态。 这三个方法最终调用的都是jvm级的native方法。随着jvm运行平台的不同可能有些许差异。 如果对象调用了wait方法就会使持 阅读全文
posted @ 2019-08-16 08:16 fly_bk 阅读(227) 评论(0) 推荐(0)
摘要:```java public class NotifyDemo { //创建资源 private static volatile Object reA = new Object(); private static volatile Object reB = new Object(); //创建线程 public static void main(String[] args) throws Inte 阅读全文
posted @ 2019-08-15 15:48 fly_bk 阅读(230) 评论(0) 推荐(0)
摘要:Java 中有三种线程创建方式,分别为实现 Runnable 接口的 run 方法,继承 Thread 类 并重写 run 的方法,使用 FutureTask 方式 阅读全文
posted @ 2019-08-15 14:22 fly_bk 阅读(237) 评论(0) 推荐(0)