上一页 1 ··· 6 7 8 9 10 11 12 13 14 ··· 16 下一页
摘要: 死锁 多个线程各自占有一些共享资源,并且互相等待其他线程占有的资源才能运行,而导致两个或者多个线程都在等待对方释放资源,都停止执行的情形。 化妆死锁案例: package test; //死锁:多个线程互相抱着对方需要的资源,然后形成僵持 public class DeadLock { public 阅读全文
posted @ 2020-05-11 14:01 我有满天星辰 阅读(1) 评论(0) 推荐(0) 编辑
摘要: 线程同步 由于我们可以通过 private 关键字来保证数据对象只能被方法访问,所以我们只需要针对方法提供一套机制,这套机制就是 synchronized 关键字,它包括两种用法:synchronized 方法 和 synchronized 块 同步方法: public synchronized v 阅读全文
posted @ 2020-05-11 13:59 我有满天星辰 阅读(0) 评论(0) 推荐(0) 编辑
摘要: 案例:线程安全的集合 package test; import java.util.ArrayList; import java.util.List; //线程安全的集合 public class UnsafeList { public static void main(String[] args) 阅读全文
posted @ 2020-05-11 00:32 我有满天星辰 阅读(39) 评论(0) 推荐(0) 编辑
摘要: 实现静态代理对比Thread (1)静态代理总结 真实对象和代理对象都要实现同一个接口代理对象要代理真实角色 (2)好处 代理对象可以做更多真实对象做不了的事情真实对象专注于做自己的事情 package test; //静态代理总结 //真实对象和代理对象都要实现同一个接口 //代理对象要代理真实角 阅读全文
posted @ 2020-05-10 22:24 我有满天星辰 阅读(0) 评论(0) 推荐(0) 编辑
摘要: 并发 并发:同一个对象被多个线程同时操作 并发问题:买火车的票的案例 多个线程同时操作同一个对象 package test; import com.sun.org.apache.bcel.internal.generic.NEW; //多个线程同时操作同一个对象 //买火车的票的案例 //发现问题 阅读全文
posted @ 2020-05-10 22:05 我有满天星辰 阅读(3) 评论(0) 推荐(0) 编辑
摘要: 线程状态 线程共包括以下5种状态。 新建状态(New) : 线程对象被创建后,就进入了新建状态。例如,Thread thread = new Thread()。 就绪状态(Runnable): 也被称为“可执行状态”。线程对象被创建后,其它线程调用了该对象的start()方法,从而来启动该线程。例如 阅读全文
posted @ 2020-05-10 16:45 我有满天星辰 阅读(12) 评论(0) 推荐(0) 编辑
摘要: Lamda表达式 1. 为什么要使用lambda表达式 避免匿名内部类定义过多可以让你的代码看起来很简洁去掉一堆没用意义的代码,只留下核心的逻辑 2. Functional Interface(函数式接口) 定义:任何接口,如果只包含一个抽象方法,那么它就是一个函数式接口。 public inter 阅读全文
posted @ 2020-05-10 02:25 我有满天星辰 阅读(15) 评论(0) 推荐(0) 编辑
摘要: 实现Callable接口 实现Callable接口,需要返回值类型:implements Callable 重写call方法,需要抛出异常 :public Boolean call() throws Exception {} 创建目标对象 :CallableTest callableTest = n 阅读全文
posted @ 2020-05-09 23:29 我有满天星辰 阅读(1) 评论(0) 推荐(0) 编辑
摘要: 实现Runnable 定义MyRunnable实现Runnable接口实现run方法,编写线程执行体创建线程对象,调用start()方法启动线程 代码实现 package test; //创建线程方式2:实现runnable接口,重写run方法,执行线程需要丢入runnable接口实现类,调用sta 阅读全文
posted @ 2020-05-09 18:26 我有满天星辰 阅读(5) 评论(0) 推荐(0) 编辑
摘要: Thread 自定义线程类继承Thread类重写run()方法,编写线程执行体创建线程对象,调用start()方法启动线程 线程不一定立即执行,由CPU调度! package test; //创建线程方式一:继承Thread类 ,重写run方法 ,调用start开启线程 public class T 阅读全文
posted @ 2020-05-09 17:54 我有满天星辰 阅读(2) 评论(0) 推荐(0) 编辑
上一页 1 ··· 6 7 8 9 10 11 12 13 14 ··· 16 下一页