- 在本地调试代码时,经常遇到端口被占用导致启动失败的问题,又不能很快找到哪个进程占用了端口,很是恼火。今天,我们用shell命令轻松搞定。 一、打开命令提示符window+R 组合键,调出命令窗口。输入CMD回车,打开命令提示符。 二、查看被占用端口对应的 PID输入命令:netstat -aon|findstr "11800"回车执行该命令,输出: TCP 10.201.242.96... 在本地调试代码时,经常遇到端口被占用导致启动失败的问题,又不能很快找到哪个进程占用了端口,很是恼火。今天,我们用shell命令轻松搞定。 一、打开命令提示符window+R 组合键,调出命令窗口。输入CMD回车,打开命令提示符。 二、查看被占用端口对应的 PID输入命令:netstat -aon|findstr "11800"回车执行该命令,输出: TCP 10.201.242.96...
- 单例模式的5种实现 单例模式的5种实现
- 1.IDEA环境配置爬坑1.1 在project中配置JDK对应的版本,本例中使用JDK1.8,下同。1.2 在Modules中配置JDK对应版本,即使用JDK1.8。1.3 java Compiler配置默认一般是1.5需要改成需要的JDK版本,即使用JDK1.8。2.JUC的定义JUC是java.util.conurrent工具包,通常用于处理并发编程。小知识点:Thread类为线程类,... 1.IDEA环境配置爬坑1.1 在project中配置JDK对应的版本,本例中使用JDK1.8,下同。1.2 在Modules中配置JDK对应版本,即使用JDK1.8。1.3 java Compiler配置默认一般是1.5需要改成需要的JDK版本,即使用JDK1.8。2.JUC的定义JUC是java.util.conurrent工具包,通常用于处理并发编程。小知识点:Thread类为线程类,...
- 鲍光亚 | Zabbix开源社区签约专家《深入理解Zabbix监控系统》图书作者2021 Zabbix深圳大会演讲嘉宾长期专注监控系统软件领域,精通Zabbix,具有多年Zabbix监控系统运维和相关开发经验,持续关注Zabbix的发展,熟悉Zabbix源码。曾就职于某大型互联网企业,专门从事Zabbix系统运维和开发工作。作为一款适用广泛、功能强大的监控软件,Zabbix的核心能力在于快速... 鲍光亚 | Zabbix开源社区签约专家《深入理解Zabbix监控系统》图书作者2021 Zabbix深圳大会演讲嘉宾长期专注监控系统软件领域,精通Zabbix,具有多年Zabbix监控系统运维和相关开发经验,持续关注Zabbix的发展,熟悉Zabbix源码。曾就职于某大型互联网企业,专门从事Zabbix系统运维和开发工作。作为一款适用广泛、功能强大的监控软件,Zabbix的核心能力在于快速...
- 会的,newFixedThreadPool使用了无界的阻塞队列LinkedBlockingQueue,如果线程获取一个任务后,任务的执行时间比较长(比如,上面demo设置了10秒),会导致队列的任务越积越多,导致机器内存使用不停飙升,** 最终导致OOM。 会的,newFixedThreadPool使用了无界的阻塞队列LinkedBlockingQueue,如果线程获取一个任务后,任务的执行时间比较长(比如,上面demo设置了10秒),会导致队列的任务越积越多,导致机器内存使用不停飙升,** 最终导致OOM。
- 1,在任务代码中使用try/catch捕获异常 2,通过future对象的get方法接收抛出的异常 3,为工作者线程设置UNcaughtexceptionHandler,在uncaughtexception方法中处理异常 1,在任务代码中使用try/catch捕获异常 2,通过future对象的get方法接收抛出的异常 3,为工作者线程设置UNcaughtexceptionHandler,在uncaughtexception方法中处理异常
- 会的,newFixedThreadPool使用了无界的阻塞队列LinkedBlockingQueue,如果线程获取一个任务后,任务的执行时间比较长(比如,上面demo设置了10秒),会导致队列的任务越积越多,导致机器内存使用不停飙升,** 最终导致OOM。 会的,newFixedThreadPool使用了无界的阻塞队列LinkedBlockingQueue,如果线程获取一个任务后,任务的执行时间比较长(比如,上面demo设置了10秒),会导致队列的任务越积越多,导致机器内存使用不停飙升,** 最终导致OOM。
- 1,在任务代码中使用try/catch捕获异常 2,通过future对象的get方法接收抛出的异常 3,为工作者线程设置UNcaughtexceptionHandler,在uncaughtexception方法中处理异常 1,在任务代码中使用try/catch捕获异常 2,通过future对象的get方法接收抛出的异常 3,为工作者线程设置UNcaughtexceptionHandler,在uncaughtexception方法中处理异常
- 1,ArrayBlockingQueue :(有界队列)是一个用数组实现的有界阻塞队列,按FIFO排序量。 2,LinkedBlockingQueue: (可设置容量队列)基于链表结构的阻塞队列,按FIFO排序任务,容量可以选择进行设置,不设置的话,将是一个无边界的阻塞队列,最大长度为Integer.MAX_VALUE,吞吐量通常要高于ArrayBlockingQuene;newFi... 1,ArrayBlockingQueue :(有界队列)是一个用数组实现的有界阻塞队列,按FIFO排序量。 2,LinkedBlockingQueue: (可设置容量队列)基于链表结构的阻塞队列,按FIFO排序任务,容量可以选择进行设置,不设置的话,将是一个无边界的阻塞队列,最大长度为Integer.MAX_VALUE,吞吐量通常要高于ArrayBlockingQuene;newFi...
- newFixedThreadPool (固定数目线程的线程池) - 核心线程数和最大线程数大小一样 - 没有所谓的非空闲时间,即keepAliveTime为0 - 阻塞队列为无界队列LinkedBlockingQueue ```java public static ExecutorService newFixedThreadPool(int nThreads, Threa... newFixedThreadPool (固定数目线程的线程池) - 核心线程数和最大线程数大小一样 - 没有所谓的非空闲时间,即keepAliveTime为0 - 阻塞队列为无界队列LinkedBlockingQueue ```java public static ExecutorService newFixedThreadPool(int nThreads, Threa...
- 1,ArrayBlockingQueue :(有界队列)是一个用数组实现的有界阻塞队列,按FIFO排序量。 2,LinkedBlockingQueue: (可设置容量队列)基于链表结构的阻塞队列,按FIFO排序任务,容量可以选择进行设置,不设置的话,将是一个无边界的阻塞队列,最大长度为Integer.MAX_VALUE,吞吐量通常要高于ArrayBlockingQuene;newFi... 1,ArrayBlockingQueue :(有界队列)是一个用数组实现的有界阻塞队列,按FIFO排序量。 2,LinkedBlockingQueue: (可设置容量队列)基于链表结构的阻塞队列,按FIFO排序任务,容量可以选择进行设置,不设置的话,将是一个无边界的阻塞队列,最大长度为Integer.MAX_VALUE,吞吐量通常要高于ArrayBlockingQuene;newFi...
- newFixedThreadPool (固定数目线程的线程池) - 核心线程数和最大线程数大小一样 - 没有所谓的非空闲时间,即keepAliveTime为0 - 阻塞队列为无界队列LinkedBlockingQueue ```java public static ExecutorService newFixedThreadPool(int nThreads, Threa... newFixedThreadPool (固定数目线程的线程池) - 核心线程数和最大线程数大小一样 - 没有所谓的非空闲时间,即keepAliveTime为0 - 阻塞队列为无界队列LinkedBlockingQueue ```java public static ExecutorService newFixedThreadPool(int nThreads, Threa...
- a,提交一个任务,线程池中核心线程数小于定义的corePoolSize,线程池会创建一个核心线程来执行任务 b,如果核心线程数满了,即线程数=corePoolSize,会将任务放入workQueue排队等待执行 c,如果workQueue也满了,判断线程是否达到maximumPoolSize,即最大线程数是否满了,如果没满,就创建一个非核心线程... a,提交一个任务,线程池中核心线程数小于定义的corePoolSize,线程池会创建一个核心线程来执行任务 b,如果核心线程数满了,即线程数=corePoolSize,会将任务放入workQueue排队等待执行 c,如果workQueue也满了,判断线程是否达到maximumPoolSize,即最大线程数是否满了,如果没满,就创建一个非核心线程...
- 1,abortPolicy (抛出一个异常,默认的) 2,discardpolicy (直接丢弃任务) 3,discardoldestpolicy (丢弃队列中最老的任务,将当前这个任务继续提交给线程池) 4,callerrunspolicy 交给线程池调用所在的线程进行处理,它直接在 execute 方法的调用线程中运行被拒绝的任务;如果执行... 1,abortPolicy (抛出一个异常,默认的) 2,discardpolicy (直接丢弃任务) 3,discardoldestpolicy (丢弃队列中最老的任务,将当前这个任务继续提交给线程池) 4,callerrunspolicy 交给线程池调用所在的线程进行处理,它直接在 execute 方法的调用线程中运行被拒绝的任务;如果执行...
- **RUNNING**- 该状态的线程池会接收新任务,并处理阻塞队列中的任务;- 调用线程池的shutdown()方法,可以切换到SHUTDOWN状态;- 调用线程池的shutdownNow()方法,可以切换到STOP状态;**SHUTDOWN**- 该状态的线程池不会接收新任务,但会处理阻塞队列中的任务;- 队列为空,并且线程池中执行的任务也为空,进入TIDYING状态;**STOP**-... **RUNNING**- 该状态的线程池会接收新任务,并处理阻塞队列中的任务;- 调用线程池的shutdown()方法,可以切换到SHUTDOWN状态;- 调用线程池的shutdownNow()方法,可以切换到STOP状态;**SHUTDOWN**- 该状态的线程池不会接收新任务,但会处理阻塞队列中的任务;- 队列为空,并且线程池中执行的任务也为空,进入TIDYING状态;**STOP**-...
上滑加载中
推荐直播
-
Skill 构建 × 智能创作:基于华为云码道的 AI 内容生产提效方案2026/03/25 周三 19:00-20:00
余伟,华为云软件研发工程师/万邵业(万少),华为云HCDE开发者专家
本次直播带来两大实战:华为云码道 Skill-Creator 手把手搭建专属知识库 Skill;如何用码道提效 OpenClaw 小说文本,打造从大纲到成稿的 AI 原创小说全链路。技术干货 + OPC创作思路,一次讲透!
回顾中 -
码道新技能,AI 新生产力——从自动视频生成到开源项目解析2026/04/08 周三 19:00-21:00
童得力-华为云开发者生态运营总监/何文强-无人机企业AI提效负责人
本次华为云码道 Skill 实战活动,聚焦两大 AI 开发场景:通过实战教学,带你打造 AI 编程自动生成视频 Skill,并实现对 GitHub 热门开源项目的智能知识抽取,手把手掌握 Skill 开发全流程,用 AI 提升研发效率与内容生产力。
回顾中 -
华为云码道:零代码股票智能决策平台全功能实战2026/04/18 周六 10:00-12:00
秦拳德-中软国际教育卓越研究院研究员、华为云金牌讲师、云原生技术专家
利用Tushare接口获取实时行情数据,采用Transformer算法进行时序预测与涨跌分析,并集成DeepSeek API提供智能解读。同时,项目深度结合华为云CodeArts(码道)的代码智能体能力,实现代码一键推送至云端代码仓库,建立起高效、可协作的团队开发新范式。开发者可快速上手,从零打造功能完整的个股筛选、智能分析与风险管控产品。
回顾中
热门标签