01 2023 档案

摘要:一、环境 OS:windows10 CPU:I7-6700HQ 内存:16G JDK:1.11 Tomcat:9.0 二、JVM参数优化 ######catalina.bat#####增加以下参数设置 Bash代码 set "CATALINA_OPTS= -Xmx1024m -Xms512m -Xs 阅读全文
posted @ 2023-01-31 12:25 锐洋智能 阅读(470) 评论(0) 推荐(0) 编辑
摘要:1月 28, 2023 12:15:13 下午 org.asynchttpclient.netty.handler.WebSocketHandler handleException 警告: onError java.net.SocketException: Connection reset at j 阅读全文
posted @ 2023-01-28 12:16 锐洋智能 阅读(251) 评论(0) 推荐(0) 编辑
摘要:又由于是框架的问题,所以我们能采取的办法是启动JVM加入如下参数: # --add-opens has the following syntax: {A}/{package}={B} --add-opens java.base/java.util=ALL-UNNAMED 阅读全文
posted @ 2023-01-27 10:12 锐洋智能 阅读(2516) 评论(0) 推荐(0) 编辑
摘要:今天来分享下 Java 17 的一些新特性。 Guide 这里也是真的建议有条件的小伙伴尝试一波 Java 17!不要死守 Java 8 了!Java 17 Java 17 在 2021 年 9 月 14 日正式发布,Java 17 是一个长期支持(LTS)版本,这次更新共带来 14 个新功能。Op 阅读全文
posted @ 2023-01-27 10:01 锐洋智能 阅读(988) 评论(0) 推荐(0) 编辑
摘要:当我们从网络上根据url下载文件的时候可能会出现一下异常 错误信息: javax.net.ssl.SSLHandshakeException: sun.security.validator.ValidatorException: PKIX path building failed: sun.secu 阅读全文
posted @ 2023-01-27 08:07 锐洋智能 阅读(12772) 评论(1) 推荐(1) 编辑
摘要:多个版本JDK切换多个JDK:JDK17、JDK19、JDK1.8轻松切换(无坑版)小白也可以看懂提示:看了网上很多教程,5w观看、32w观看、几千观看的,多多少少带点坑,这里我就把踩过的坑都给抹了文章目录 多个版本JDK切换 一、JDK下载 二、安装 以前JDK怎么安装,其他就怎么安装 三、配置 阅读全文
posted @ 2023-01-27 07:03 锐洋智能 阅读(6875) 评论(0) 推荐(1) 编辑
摘要:编译相关 JEP 320 使用了 sun.misc.* 下的包 lombok 使用了 com.sun.tools.javac.* 下的包 kotlin 版本限制 废弃依赖分析 参数迁移 什么是 Unified Logging 输出什么信息(selectors) 第二部分:输出到哪里(output) 阅读全文
posted @ 2023-01-27 06:41 锐洋智能 阅读(558) 评论(0) 推荐(0) 编辑
摘要:如图,Tomcat 启动总有一个这个告警,看着很别扭。意思是:APR 是指tomcat的 可移植运行库确实需要的话,可以下载一个tomcat的 组件,安装配置后,可以使得tomcat性能运行更好 下载地址:安装配置链接中的APR可以提高tomcat性能 配置:下载后将 tcnative-1.dll 阅读全文
posted @ 2023-01-26 22:07 锐洋智能 阅读(1597) 评论(0) 推荐(0) 编辑
摘要:java.lang.UnsupportedClassVersionError: org/opencv/imgcodecs/Imgcodecs has been compiled by a more recent version of the Java Runtime (class file vers 阅读全文
posted @ 2023-01-26 21:12 锐洋智能 阅读(6676) 评论(1) 推荐(0) 编辑
摘要:(含更新组件)新版及历史版本 https://www.lanzout.com/b0khja5g https://pan.baidu.com/s/1Q5FptUnS0BjGMk5erwOhyw 提取码:36oz 阅读全文
posted @ 2023-01-26 11:47 锐洋智能 阅读(593) 评论(0) 推荐(0) 编辑
摘要:在Eclipse下进行Web开发的时候,通常需要配置Server进行测试,那么如何打开Servers窗口,如何应用呢? 1、点击Window菜单》Show View》Other 2、在打开的窗口中找到Servers,点击确定 3、会在标签页中显示Servers 4、在Server上单击鼠标右键,选择 阅读全文
posted @ 2023-01-22 12:20 锐洋智能 阅读(1461) 评论(0) 推荐(0) 编辑
摘要:炒股:Speculate in stocks 老鼠仓 Rat Trading 原始股 Initial offerings 抄底 go bottom fishing 创业板 Second board 红马甲 floor broker; floor trader 黄马甲 Exchange personn 阅读全文
posted @ 2023-01-22 10:38 锐洋智能 阅读(1473) 评论(0) 推荐(0) 编辑
摘要:Mac最新的Apple M1芯片的重装教程与Intel芯片的不同,M1的如果使用抹掉硬盘再重装时,无法通过mac的恢复功能进行重装,无法再进入系统,也可能提示“准备更新时出错。未能个性化软件更新。请再试一次。”的错误,本次小编为您带来了Apple M1芯片版Mac系统重装教程,快来看看吧! Appl 阅读全文
posted @ 2023-01-20 20:54 锐洋智能 阅读(3800) 评论(0) 推荐(0) 编辑
摘要:Google Chrome v108.0.5359.72 官方正式版 离线安装包 Windows版(无更新组件)64位 https://dl.google.com/release2/chrome/ij3z4ttz6vdcmafpsfp3skmzda_108.0.5359.72/108.0.5359. 阅读全文
posted @ 2023-01-20 08:12 锐洋智能 阅读(6084) 评论(0) 推荐(0) 编辑
摘要:ChromeDriver was started successfully.一月 20, 2023 7:04:35 上午 org.openqa.selenium.devtools.CdpVersionFinder findNearestMatch警告: Unable to find an exact 阅读全文
posted @ 2023-01-20 07:11 锐洋智能 阅读(636) 评论(0) 推荐(0) 编辑
摘要:public static void main(String[] args) { Map<String, String> map = new HashMap<String, String>(); map.put("key1", "value1"); map.put("key2", "value2") 阅读全文
posted @ 2023-01-19 15:05 锐洋智能 阅读(1658) 评论(0) 推荐(0) 编辑
摘要:/** * 将Map字符串转换为Map * * @param str Map字符串 * @return Map */ public static Map<String,String> mapStringToMap(String str){ str = str.substring(1, str.len 阅读全文
posted @ 2023-01-19 15:04 锐洋智能 阅读(1436) 评论(0) 推荐(0) 编辑
摘要:Map<String, String> map = new HashMap<String, String>(); map.put("key1", "value1"); map.put("key2", "value2"); map.put("key3", "value3"); System.out.p 阅读全文
posted @ 2023-01-19 15:03 锐洋智能 阅读(1074) 评论(0) 推荐(0) 编辑
摘要:集合、数组都是对多个数据结构进行存储操作的结构,简称Java容器。但是随着数据量的增大,数组越来越不能满足现代的开发要求。比如数组初始化以后,长度就确定了,不便于扩展;数组声明的时候,就决定了元素初始化的类型且添加、删除操作效率低下。 Java集合可以看做一个容器,比较灵活,可以动态的把多个对象昂如 阅读全文
posted @ 2023-01-12 19:34 锐洋智能 阅读(81) 评论(0) 推荐(0) 编辑
摘要:ArrayList、 LinkedList 和 Vector都实现了List接口,是List的三种实现。ArrayList底层是用数组实现的。可以认为ArrayList是一个可改变大小的数组。随着越来越多的元素被添加到ArrayList中,其规模是动态增加的。LinkedList底层是通过双向链表实 阅读全文
posted @ 2023-01-12 19:34 锐洋智能 阅读(17) 评论(0) 推荐(0) 编辑
摘要:一:set集合框架体系图 二:set集合介绍Set接口继承了Collection接口,含有许多常用的方法。 int size();返回集合的长度 boolean isEmpty();判断集合是否为空 boolean contains(Object o);是否包含某个值 boolean add(E e 阅读全文
posted @ 2023-01-12 19:26 锐洋智能 阅读(890) 评论(0) 推荐(0) 编辑
摘要:windows10系统设置定时开机教程 找到“此电脑”应用,鼠标点击右键,选择“管理”选项进入。 弹出来的对话框中点击左栏中的”任务计划程序“,进入页面后点击右栏中的“创建基本任务”按钮。 在弹出来的对话框中在名称处输入“定时开机”,点击“下一步”按钮,然后我们在任务触发器页面中选项所要求的频率。 阅读全文
posted @ 2023-01-11 09:27 锐洋智能 阅读(4536) 评论(0) 推荐(0) 编辑
摘要:操作方法 1、按下win+S,输入“控制面板”,点击进入控制面板。也可以通过别的方法进入。 2、更改控制面板的显示方式为大图标,里面有个一安全和维护,点击进入。控制面板的显示方式在右上角,默认显示为类型,更改为大图标即可。 3、展开维护选项,会出现很多的配置选项,找到自动维护栏,单击更改维护设置。 阅读全文
posted @ 2023-01-11 09:17 锐洋智能 阅读(10089) 评论(0) 推荐(0) 编辑
摘要:一、重命名 我们可以直接把“sms.reyo.cn.pem”重命名为“sms.reyo.cn.crt"; 把“sms.reyo.cn.privkey.pem”重命名为“sms.reyo.cn.privkey.key; 阅读全文
posted @ 2023-01-10 23:04 锐洋智能 阅读(2636) 评论(0) 推荐(0) 编辑
摘要:有时候因为工作需要,我们会对电脑设置定时关机的操作。很多小伙伴可能还不知道如何设置,这里就和大家分享一下Win10电脑如何定时关机吧。 1、首先通过win+r的快捷键打开运行窗口,或者我们也可以直接在搜索栏里搜索运行。 2、然后在窗口中输入以下命令“shutdown -s -t ”,在t后面输入想要 阅读全文
posted @ 2023-01-10 15:28 锐洋智能 阅读(2075) 评论(0) 推荐(0) 编辑
摘要:一般主要包括4种处理过期方,其中expire都是以秒为单位,pexpire都是以毫秒为单位的。1 EXPIRE key seconds //将key的生存时间设置为ttl秒2 PEXPIRE key milliseconds //将key的生成时间设置为ttl毫秒3 EXPIREAT key tim 阅读全文
posted @ 2023-01-08 18:10 锐洋智能 阅读(3334) 评论(0) 推荐(0) 编辑
摘要:Thread1、是一个类2、只能被继承实现方式 class ThreadTest extends Thread{ private int ticket = 100; public void run(){ while(true){ if(ticket > 0){ ticket- }else{ brea 阅读全文
posted @ 2023-01-07 17:23 锐洋智能 阅读(40) 评论(0) 推荐(0) 编辑
摘要:线程的六种状态 public enum State { NEW, RUNNABLE, BLOCKED, WAITING, TIMED_WAITING, TERMINATED; } 阅读全文
posted @ 2023-01-07 17:21 锐洋智能 阅读(21) 评论(0) 推荐(0) 编辑
摘要:在多线程中有多种方法让线程按特定顺序执行,你可以用线程类的join()方法在一个线程中启动另一 个线程,另外一个线程完成该线程继续执行。为了确保三个线程的顺序你应该先启动最后一个(T3调 用T2 ,T2调用T1) ,这样T1就会先完成而T3最后完成。实际上先启动三个线程中哪一个都行, 因为在每个线程 阅读全文
posted @ 2023-01-07 17:11 锐洋智能 阅读(129) 评论(0) 推荐(0) 编辑
摘要:ArrayList 初始容量:10 ,扩容因子:1,当容量达到上限后才会触发扩容。扩容公式:新容量 = 旧容量/2 + 旧容量 + 1比如:初始容量为4,其容量的每次扩充后的新容量为:4->7->11->17->26->...即每次扩充至原有基础的1.5倍LinkedListlinkedList没有 阅读全文
posted @ 2023-01-07 17:10 锐洋智能 阅读(600) 评论(0) 推荐(0) 编辑
摘要:1.ArrayListArrayList 初始化大小是 10扩容点规则是,新增的时候发现容量不够用了,就去扩容扩容大小规则是,扩容后的大小= 原始大小*1.5。ArrayList是一个集合,底层维护的是数组结构,查询比较快,增删慢,线程不同步2.LinkedListLinkedList 是一个双向链 阅读全文
posted @ 2023-01-07 17:07 锐洋智能 阅读(314) 评论(0) 推荐(0) 编辑
摘要:在 Java 开发中少不了使用 HashMap,但是通常使用 HashMap 时就是简单的进行 new 一下就可以开始使用了。比如这样: HashMap<String, Object> param = new HashMap<>(); 这样使用并不会有什么问题,但是如果在创建 HashMap 时如果 阅读全文
posted @ 2023-01-07 10:14 锐洋智能 阅读(646) 评论(3) 推荐(1) 编辑
摘要:HashMap的介绍在开始之前,先看下在官方文档中是如何介绍HashMap的: An instance of HashMap has two parameters that affect its performance: initial capacity and load factor. The c 阅读全文
posted @ 2023-01-07 10:03 锐洋智能 阅读(203) 评论(0) 推荐(0) 编辑
摘要:目录 一.写时复制介绍 二.CopyOnWriteArrayList介绍 三.CopyOnWriteArrayList源码解析 3.1 重要属性 3.2 getArray和setArray 3.3 构造方法 3.4 获取元素 3.5 添加元素 3.5.1 追加元素 3.5.2 指定位置插入元素 3. 阅读全文
posted @ 2023-01-06 07:44 锐洋智能 阅读(44) 评论(0) 推荐(0) 编辑
摘要:原理:不通过比较来决定元素间的相对次序,它可以突破基于比较排序的时间下界,以线性时间运行,因此称为线性时间非比较类排序。 图解: 桶排序: 计数排序: 基数排序: 代码示例: import java.util.ArrayList; import java.util.Arrays; import ja 阅读全文
posted @ 2023-01-06 07:14 锐洋智能 阅读(19) 评论(0) 推荐(0) 编辑
摘要:题目: 思路: 首先明确了这个可以在一次循环中解决即时间复杂度为O(n) 其次,在循环中,我们应能知道起始的位置,然后终止于哪个位置,当碰到终止的时候必然是元素为已经纳入我们统计中的元素。然后我们要如何确认这个元素在哪个位置,并且把一些废弃的元素丢弃掉,重新到下一次统计,直至目标数组遍历完全。 所以 阅读全文
posted @ 2023-01-06 07:13 锐洋智能 阅读(185) 评论(0) 推荐(0) 编辑
摘要:题目: 思路: 由于这是一个链表,所以我们一般只能获取到一个头结点,然而其他信息我们不确定。所以可以采用双指针的方法。 思路一,利用一个指针获取整个链表元素的总数,利用总数减去目标数,所以我们可以确定要删除的位置。 思路二,利用一个指针先走出目标数目,然后两个指针一起走,那么先走的指针走完时,第二个 阅读全文
posted @ 2023-01-06 07:12 锐洋智能 阅读(441) 评论(0) 推荐(0) 编辑
摘要:题目: 思路: 如图: 思路一,利用动态规划的方法,列出全部结果来寻找规律,我们发现45度下滑,如果连续相等的话我们可以做递加,不但可以得出最长的字符串数量还可以知道字符的位置。 思路二,这是我看别人提供的一种思路,通过将一个字符串截取部分,然后判断是否在另一个字符串中,然后不断偏移直至全部比对完, 阅读全文
posted @ 2023-01-06 07:11 锐洋智能 阅读(356) 评论(0) 推荐(0) 编辑
摘要:前置知识(CAS部分) (1)什么是 CAS 1.CAS(Compare And Swap,比较并交换),通常指的是这样一种原子操作: 针对一个变量,首先比较它的内存值与某个期望值是否相同,如果相同,就给它赋一个新值。 2.CAS 的逻辑用伪代码描述 : if (value == expectedV 阅读全文
posted @ 2023-01-06 07:09 锐洋智能 阅读(207) 评论(0) 推荐(0) 编辑
摘要:ArrayBlockingQueue :基于数组结构实现的一个有界阻塞队列 LinkedBlockingQueue : 基于链表结构实现的一个无界阻塞队列,指定容量为有界阻塞队列 SynchronousQueue :不存储元素的阻塞队列 LinkedTransferQueue : 基于链表结构实现的 阅读全文
posted @ 2023-01-06 07:04 锐洋智能 阅读(14) 评论(0) 推荐(0) 编辑
摘要:【1】为什么要使用线程池? 示例演示: //设置业务模拟 class MyRunnable implements Runnable { private int count; public MyRunnable(int count) { this.count = count; } public int 阅读全文
posted @ 2023-01-06 07:02 锐洋智能 阅读(100) 评论(0) 推荐(0) 编辑
摘要:【1】前言 本篇幅是对 线程池底层原理详解与源码分析 的补充,默认你已经看完了上一篇对ThreadPoolExecutor类有了足够的了解。 【2】ScheduledThreadPoolExecutor的介绍 1.ScheduledThreadPoolExecutor继承自ThreadPoolExe 阅读全文
posted @ 2023-01-06 07:01 锐洋智能 阅读(47) 评论(0) 推荐(0) 编辑
摘要:Future模式 【1】Future模式是多线程开发中常见的设计模式,它的核心思想是异步调用。对于Future模式来说,它无法立即返回你需要的数据,但是它会返回一个契约,将来你可以凭借这个契约去获取你需要的信息。 【2】通俗一点就是生产者-消费者模型的扩展。经典“生产者-消费者”模型中消息的生产者不 阅读全文
posted @ 2023-01-06 07:00 锐洋智能 阅读(856) 评论(0) 推荐(0) 编辑
摘要:什么是CopyOnWrite容器 【1】CopyOnWrite容器是基于并发模式Copy-on-Write模式(最简单的并发解决方案)实现的用于避免共享的数据集合。 【2】CopyOnWrite容器又被成为写时复制的容器,即当我们往一个容器添加元素的时候,不直接往当前容器添加,而是先将当前容器进行C 阅读全文
posted @ 2023-01-06 06:58 锐洋智能 阅读(160) 评论(0) 推荐(0) 编辑
摘要:SynchronousQueue介绍 【1】SynchronousQueue是一个没有数据缓冲的BlockingQueue,生产者线程对其的插入操作put必须等待消费者的移除操作take。 【2】如图所示,SynchronousQueue 最大的不同之处在于,它的容量为 0,所以没有一个地方来暂存元 阅读全文
posted @ 2023-01-06 06:55 锐洋智能 阅读(915) 评论(0) 推荐(0) 编辑
摘要:【1】DelayQueue 是一个支持延时获取元素的阻塞队列, 内部采用优先队列 PriorityQueue 存储元素,同时元素必须实现 Delayed 接口;在创建元素时可以指定多久才可以从队列中获取当前元素,只有在延迟期满时才能从队列中提取元素。延迟队列的特点是:不是先进先出,而是会按照延迟时间 阅读全文
posted @ 2023-01-06 06:55 锐洋智能 阅读(366) 评论(0) 推荐(0) 编辑
摘要:PriorityBlockingQueue介绍 【1】PriorityBlockingQueue是一个无界的基于数组的优先级阻塞队列,数组的默认长度是11,也可以指定数组的长度,且可以无限的扩充,直到资源消耗尽为止,每次出队都返回优先级别最高的或者最低的元素。默认情况下元素采用自然顺序升序排序,当然 阅读全文
posted @ 2023-01-06 06:54 锐洋智能 阅读(211) 评论(0) 推荐(0) 编辑
摘要:ArrayBlockingQueue介绍 ArrayBlockingQueue是最典型的有界阻塞队列,其内部是用数组存储元素的,初始化时需要指定容量大小,利用 ReentrantLock 实现线程安全。 在生产者-消费者模型中使用时,如果生产速度和消费速度基本匹配的情况下,使用ArrayBlocki 阅读全文
posted @ 2023-01-06 06:53 锐洋智能 阅读(366) 评论(0) 推荐(0) 编辑
摘要:什么是阻塞队列 【1】阻塞队列:从定义上来说是队列的一种,那么肯定是一个先进先出(FIFO)的数据结构。与普通队列不同的是,它支持两个附加操作,即阻塞添加和阻塞删除方法。 【2】阻塞添加:当阻塞队列是满时,往队列里添加元素的操作将被阻塞。 【3】阻塞移除:当阻塞队列是空时,从队列中获取元素/删除元素 阅读全文
posted @ 2023-01-06 06:52 锐洋智能 阅读(830) 评论(0) 推荐(1) 编辑
摘要:LinkedBlockingDeque介绍 【1】LinkedBlockingDeque是一个基于链表实现的双向阻塞队列,默认情况下,该阻塞队列的大小为Integer.MAX_VALUE,可以看做无界队列,但也可以设置容量限制,作为有界队列。 【2】相比于其他阻塞队列,LinkedBlockingD 阅读全文
posted @ 2023-01-06 06:51 锐洋智能 阅读(296) 评论(0) 推荐(0) 编辑
摘要:LinkedBlockingQueue介绍 【1】LinkedBlockingQueue是一个基于链表实现的阻塞队列,默认情况下,该阻塞队列的大小为Integer.MAX_VALUE,由于这个数值特别大,所以 LinkedBlockingQueue 也被称作无界队列,代表它几乎没有界限,队列可以随着 阅读全文
posted @ 2023-01-06 06:50 锐洋智能 阅读(741) 评论(0) 推荐(0) 编辑
摘要:文章目录 为什么要了解扩容机制 ArrayList LinkedList Vector Stack java.util.concurrent.CopyOnWriteArrayList Queue相关的默认容量以及扩容机制 java.util.concurrent.ArrayBlockingQueue 阅读全文
posted @ 2023-01-06 06:44 锐洋智能 阅读(608) 评论(0) 推荐(0) 编辑
摘要:首先,数组和集合的区别: 数组是大小固定的 集合可以存储和操作数目不固定的一组数据,集合只能存放引用类型的的数据,不能存放基本数据类型 特性 List 允许重复 有序 继承自Connection Set 不允许重复 无序 继承自Connection Map 键值对 区别与List和Set,既没有继承 阅读全文
posted @ 2023-01-05 10:20 锐洋智能 阅读(130) 评论(0) 推荐(0) 编辑
摘要:目录 一、简介 二、遍历方式 1、ArrayList遍历方式 (1)for循环遍历 (2)foreach循环遍历 (3)Iterator迭代器遍历 2、LinkedList遍历方式 (1)for循环遍历 (2)foreach循环遍历 (3)Iterator迭代器遍历 3、HashSet遍历方式 (1 阅读全文
posted @ 2023-01-05 10:09 锐洋智能 阅读(1073) 评论(0) 推荐(0) 编辑
摘要:1.扩容加载因子的系数小于等于1,意指 即当 元素个数 超过 容量长度*加载因子的系数 时,进行扩容。eg:加载因子为0.75:即当 元素个数 超过 容量长度的0.75倍 时,进行扩容 2.内存泄漏(溢出)2.1. Q:在Java中怎么可以产生内存泄露?A:Java中,造成内存泄露的原因有很多种。典 阅读全文
posted @ 2023-01-05 09:56 锐洋智能 阅读(499) 评论(0) 推荐(0) 编辑
摘要:https://github.com/SeleniumHQ/selenium 官方升级说明中提示了改变了日志方式了 v4.7.2 * Grid: Support file downloads on the node (#11277)* Change chromium service names fr 阅读全文
posted @ 2023-01-04 08:32 锐洋智能 阅读(221) 评论(0) 推荐(0) 编辑
摘要:报错信息Starting ChromeDriver 108.0.5359.71 (1e0e3868ee06e91ad636a874420e3ca3ae3756ac-refs/branch-heads/5359@{#1016}) on port 22060Only local connections 阅读全文
posted @ 2023-01-03 19:41 锐洋智能 阅读(4129) 评论(0) 推荐(1) 编辑
摘要:文档说明 Hutool参考文档 自定义线程池ExecutorBuilder在JDK中,提供了Executors用于创建自定义的线程池对象ExecutorService,但是考虑到线程池中存在众多概念,这些概念通过不同的搭配实现灵活的线程管理策略,单独使用Executors无法满足需求,构建了Exec 阅读全文
posted @ 2023-01-01 16:35 锐洋智能 阅读(969) 评论(0) 推荐(0) 编辑
摘要:1 线程池基础 1.1 线程池是什么? 线程池,就是一个线程的池子,里面有若干线程,它们的目的就是执行提交给线程池的任务,执行完一个任务后不会退出,而是继续等待或执行新任务。案例如下图所示:首先创建了一个线程池,线程池中有 5 个线程,然后线程池将 10000 个任务分配给这 5 个线程,这 5 个 阅读全文
posted @ 2023-01-01 10:30 锐洋智能 阅读(188) 评论(0) 推荐(0) 编辑
摘要:简介说明 本文用示例介绍Java中阻塞队列(BlockingQueue)的用法。队列类型 BlockingQueue有这几种类型:ArrayBlockingQueue、LinkedBlockingQueue、SynchronousQueue、PriorityBlockingQueue、Delayed 阅读全文
posted @ 2023-01-01 10:25 锐洋智能 阅读(718) 评论(0) 推荐(0) 编辑
摘要:一、LinkedBlockingQueue介绍①、LinkedBlockingQueue是一个单向链表实现的阻塞队列,先进先出的顺序。支持多线程并发操作。相比于数组实现的ArrayBlockingQueue的有界,LinkedBlockingQueue可认为是无界队列。多用于任务队列。②、Linke 阅读全文
posted @ 2023-01-01 10:22 锐洋智能 阅读(262) 评论(0) 推荐(0) 编辑
摘要:TimeUnit.SECONDS(5)线程等待五秒 TimeUnit.MILLISECONDS(5000)线程等待五秒. 两者的时间单位不一样。 内部都是Thread.sleep实现。 public static TimeUnit toTimeUnit(final HBaseProtos.TimeU 阅读全文
posted @ 2023-01-01 10:19 锐洋智能 阅读(995) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示