摘要: 1.四个函数式接口 1 /* 2 Interface Function<T,R> T input Type, R return Type 3 R apply(T t) 4 Interface Supplier<T> T return Type 5 T get() 6 Interface Consum 阅读全文
posted @ 2020-03-07 17:20 jk2330 阅读(213) 评论(0) 推荐(0)
摘要: 1. 为什么要使用线程池:线程复用 2. 三大方法、七大参数、四大策略: 三大方法 // 单例,只能有一个线程! ExecutorService threadPool = Executors.newSingleThreadExecutor(); // 固定的线程数 ExecutorService t 阅读全文
posted @ 2020-03-07 16:57 jk2330 阅读(118) 评论(0) 推荐(0)
摘要: 1. 队列(Queue)和List、Set都同属于集合(collection)。 2. 阻塞:什么情况下肯定会阻塞! 当队列是满的,添加元素就会被阻塞。 当队列是空的,获取元素就会被阻塞。 3. 为啥要用阻塞队列? 线程间通信不需要关心唤醒时 4. 4组API 方法抛出异常返回一个布尔值,不会抛出异 阅读全文
posted @ 2020-03-07 16:31 jk2330 阅读(88) 评论(0) 推荐(0)
摘要: 1 /* 2 1、标准的访问情况下,先执行 sendEmail 还是 sendSMS 3 4 答案:sendEmail 5 被 synchronized 修饰的方法,锁的对象是方法的调用者也就是实际new的对象,所以说这里两个方法调用的对象是同一个 6 先调用的先执行! 7 */ 8 public 阅读全文
posted @ 2020-03-07 15:09 jk2330 阅读(500) 评论(0) 推荐(0)