![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
jdk学习
文章平均质量分 70
wangfenglei123456
热爱学习,喜欢开发,后端java开发,目前研究spring源码设计。
展开
-
java线程状态及中断interrupt()
线程中断参考视频【Java并发·08】线程中断 interrupt_哔哩哔哩_bilibili距离上次更新过去了快两个月,虽然快两个月,但是这集还是做的比较仓促可能是年纪大了吧……内容自然是精心准备的。不过有些画面细节可能还比不上前面的作品,特别是文字质量,发虚是因为我又换软件了,这次都是用开源软件做的后面有时间了我会去研究研究怎么改进https://www.bilibili.com/video/BV1CM4y157vc/?spm_id_from=pageDriver1.判断线程是否中断,只有在线.原创 2022-02-09 14:40:37 · 632 阅读 · 0 评论 -
强大的CompletableFuture开启异步执行任务
本文介绍CompletableFuture类,开启线程异步执行任务。参考视频:这个视频讲的很好,一定要去看。。。。。。【Java并发·03】CompletableFuture入门_哔哩哔哩_bilibili异步编程,原来可以这样简单多线程、异步 是近些年来工作中越来越常用的技术但是有好多同学都停留在 Thread 层面,没有去了解更方便的工具这是制作视屏以来的第三个作品,加入了一些搞笑的元素。希望能让你们轻轻松松学知识-本节课是 CompletableFuture 的入门课讲到了 Completab原创 2022-02-08 18:19:22 · 964 阅读 · 0 评论 -
BlockingQueue的实现类讲解
jdk有几个BlockingQueue阻塞队列的实现类,总结一下,不同点及用处。看类图第一个:ArrayBlockingQueue入队方法public boolean add(E e) ---- 内部会调用offer(e),返回false就抛异常,需要自己捕获,否则线程遇到这个异常就结束了public boolean offer(E e)----往队列里添加元素,添加成功返回true,添加失败返回false。public void put(E e) throws Inte原创 2022-02-07 16:25:02 · 911 阅读 · 0 评论 -
CountDownLatch的2种使用场景
CountDownLatch是基于AQS的操作共享锁的表现,可以控制多个线程,一起执行。模仿并发CountDownLatch类中有2个方法。1. await();表示线程阻塞,2. countDown();表示,计数器减一。在线程阻塞后,计数器减至0后才可以唤醒阻塞的线程。场景一:模仿高并发,多个线程,同事访问一个资源。代码:package com.example.demo2.cusdemo.countdowndemo;import java.util.concurrent.C.原创 2022-01-28 10:49:44 · 1543 阅读 · 0 评论 -
线程中断方法Thread.currentThread().interrupt()、Thread.interrupted()、Thread.currentThread().isInterrupted()
本文介绍3个线程中断方法的意义及使用结果。在ReentrantLock类中会看到有使用的地方。 Thread.currentThread().interrupt():表示为当前线程打中断标记。 Thread.interrupted():表示清除中断标记,如果当前线程中断,返回true,否则返回false Thread.currentThread().isInterrupted():表示查看当前线程的状态是否中断,不清除中断标记 测试代码public static v原创 2022-01-26 18:35:17 · 4429 阅读 · 1 评论 -
易懂--详解--线程池ThreadPoolExecutor执行流程
介绍线程池的执行流程,及源码分析线程池接收任务:1.先创建核心work,执行任务,核心work创建满了,再来新的任务,没有空闲的核心work,2.就将任务放进队列,队列添加满了,3.就创建非核心work,此时,非核心work和核心work一起执行队列中的任务,当核心、非核心work、队列都满了,再添加任务,就执行拒绝策略注1:一个线程池创建的work数量是有限的,当work达到ctl最大值即563870912,此线程池就拒绝接收任务,每次创建一个work,不论是核心还是非核心的,ctl值原创 2022-01-19 16:49:19 · 1778 阅读 · 1 评论 -
java.util.function.Consumer订单支付场景使用案例
java.util.function.Consumer函数接口,是需要定义一个消费实现,代码中接收到consumer对象,直接调用consumer.accept(T);方法就会调用自定义的消费实现方法。简单使用:import java.util.function.Consumer;/** * @Author wfl 2021/12/1 * 功能 简单测试 */public class TestComsumer2 { public static void main(Stri.原创 2021-12-01 16:45:18 · 1350 阅读 · 0 评论 -
lambda内容讲解--通俗易懂
lambda表达式的由来,如何变化的。让大家更容易理解原创 2021-12-01 10:30:54 · 712 阅读 · 0 评论 -
Optional 类介绍及使用---jdk8新增类
大家可以自己打开Optional类看里面的方法,及文档介绍,更详细目录1.Optional类方法介绍及简单使用ofofNullablegetisPresentmapflatMaporElseorElseGetorElseThrow2.Optional类场景使用基本类import lombok.Data;import java.util.Optional;@Datapublic class User { priva...原创 2021-11-30 18:02:09 · 661 阅读 · 0 评论 -
LocalDateTime 使用 jdk8新增类
目录LocalDateTime 时间转换LocalDateTime 时间转换//毫秒值 long milli = LocalDateTime.now().toInstant(ZoneOffset.of("+8")).toEpochMilli(); //毫秒值转化时间戳 DateTimeFormatter df = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss.SSS");原创 2021-11-08 15:36:12 · 117 阅读 · 0 评论 -
总结JDK8Lambda表达式
1.总结Lambda表达式各符号的意思,及使用方法。我学习的视频地址:https://ke.qq.com/course/397477?taid=3334870307049637视频里面讲的很详细,及使用,我也总结了其中的一部分1.1 介绍Lambda表达式就是一个匿名内部类,函数式接口只有一个方法。使用@FunctionalInterface直接修饰//Lambda表达式使...原创 2020-04-03 17:02:52 · 200 阅读 · 0 评论