多线程
hy_zzzzz
这个作者很懒,什么都没留下…
展开
-
Java 定时任务实现原理详解
在jdk自带的库中,有两种技术可以实现定时任务。一种是使用Timer,另外一个则是ScheduledThreadPoolExecutor。下面为大家分析一下这两个技术的底层实现原理以及各自的优缺点。一、Timer1. Timer的使用class MyTask extends TimerTask{ @Override public void run() { S...转载 2018-11-18 23:50:12 · 820 阅读 · 0 评论 -
集群服务器定时任务重复执行的解决方案
服务器采用了负载均衡,有两台服务器,部署的代码一样,所以里面的定时任务在某一时间会被同时执行,这就导致了很多其他意外的发生,想要解决的问题基本就三个:单点执行,故障转移,服务状态。这里对比一下网上找的几种方案,:(1)只在一台服务器上部署该定时任务代码。优点:解决方法容易理解 缺点:部署麻烦,需要多套代码,且当这台服务器出问题时就没定时任务了。(2)在定时任务代码上加上某个特定的...转载 2018-11-19 10:12:13 · 7456 阅读 · 0 评论 -
spring定时器的两种配置方式
1、加入依赖包:<dependency> <groupId>org.quartz-scheduler</groupId> <artifactId>quartz</artifactId> <version>2.2.1</version></dependency>转载 2018-11-19 11:35:22 · 157 阅读 · 0 评论 -
CountDownLatch使用
正如每个Java文档所描述的那样,CountDownLatch是一个同步工具类,它允许一个或多个线程一直等待,直到其他线程的操作执行完后再执行。在Java并发中,countdownlatch的概念是一个常见的面试题,所以一定要确保你很好的理解了它。在这篇文章中,我将会涉及到在Java并发编 程中跟CountDownLatch相关的以下几点:目录CountDownLatch是什么? Cou...转载 2019-01-22 23:30:14 · 133 阅读 · 0 评论 -
Java 中的 Monitor 机制
monitor的概念管程,英文是 Monitor,也常被翻译为“监视器”,monitor 不管是翻译为“管程”还是“监视器”,都是比较晦涩的,通过翻译后的中文,并无法对 monitor 达到一个直观的描述。在《操作系统同步原语》 这篇文章中,介绍了操作系统在面对 进程/线程 间同步的时候,所支持的一些同步原语,其中 semaphore 信号量 和 mutex 互斥量是最重要的同步原语。在使...转载 2019-04-14 21:49:54 · 3499 阅读 · 0 评论 -
JVM汇编&volatile关键字可见性
无关性的基石计算机只认识0和1,所以我们写的程序需要被编译器翻译成0和1才能被计算机执行。10多年的时间过去了,今天的计算机仍然只识别0和1,但由于最近10年内虚拟机及建立在虚拟机之上的大量程序语言如后春笋般出现并蓬勃发展,将我们编写字的程序编译成二进制本地机器码已经不再是唯一的选择,越来越多的程序语言选择了与操作系统和机器指令集无关的,平台中立的格式作为程序编译后的存储格式。“一次编写,到处...转载 2019-07-13 22:13:38 · 206 阅读 · 0 评论