最近在项目中需要任务调度框架,正好springboot集成了一个简单定时调度,而且我们项目功能比较简单就没必要引入Quartz这种比较大型的框架。但是在使用的过程中测试人员发现如果多个任务设计同一时间执行会出现只有一个任务在执行其它任务都无法执行的情况。因为问题比较严重就专门研究了一翻,发现问题还真存在。以下是测试流程:

1.新建个测试类,里面定义2个方法execute1和execute2。两个方法里面没有任何操作只打印当前时间和线程名,为了模拟线上的情况让该方法运行的时候sleep 1秒再结束(业务操作需要耗费一定的时间)。

import org.springframework.scheduling.annotation.Scheduled;

import org.springframework.stereotype.Component;

import java.time.LocalDateTime;

@Component

public class MyScheduled {

@Scheduled(cron = "0/5 * * * * ?")

public void execute1(){

String curName = Thread.currentThread().getName() ;

System.out.println("当前时间:"+LocalDateTime.now()+" 任务execute1对应的线程名: "+curName);

try {

Thread.sleep(1000);

} catch (Exception e) {

e.printStackTrace();

java场次时间冲突,解决使用@Scheduled创建任务时无法在同一时间执行多个任务的BUG...相关推荐

  1. 解决:Anaconda创建虚拟环境时出现An HTTP error occurred when trying to retrieve this URL.anaconda

    解决:Anaconda创建虚拟环境时出现An HTTP error occurred when trying to retrieve this URL.anaconda #在Anaconda创建虚拟环 ...

  2. android项目创建好慢,解决 Android Studio 创建项目时极其的慢的尴尬

    Android Studio 创建新项目的时候,会在进度条的界面滞留很久. 有时候一天都卡在这. 打开其它项目有些时候,也会出现这种情况. 创建工程 原因 在创建新项目的时候导致进度条一直转个不停的主 ...

  3. s60 手机 Java软件安装冲突解决

    Java软件有MIDP2.0和MIDP1.0两种.因此,我们在安装Java软件时,首先需要根据软件提供的信息判断软件是否适合自己的手机,从而避免安装之后无法使用的情况发生. 此外,有些软件可能会与手机 ...

  4. linux创建用户已存在哪里,解决linux下创建用户时出现 Creating mailbox file: 文件已存在...

    原来linux下添加用户后,会在系统里自动加一个邮箱(系统邮箱),路径是:/var/spool/mail/用户名. 可以直接用命令#rm -rf /var/spool/mail/用户名 这样就可以再次 ...

  5. 【ArcGIS风暴】ArcGIS解决数字化之前创建图层时未定义坐标系而导致数据跑偏的问题

    数字化时,第一步需要创建点线面图层,创建图层需要指定一个地理坐标系,但如果忽略了这一步,我们数字化的适量数据时没有坐标系的,后果很严重,如果数字化工作只做了一点点,可以卷土重来:如果是大量工作的话,可 ...

  6. 花了两天时间,解决安装升级 Windows 10 时 0x800707e7 - 0x3000d 错误

    错误详情: 0x800707E7 - 0x3000D 在 MIGRATE_DATA 操作过程中的 FIRST_BOOT 阶段,安装失败,出现错误 尝试过的解决方法(以下每一种方法在使用之前都是格式化 ...

  7. 解决linux下创建用户时出现Creating mailbox file: File exists

    在linux下用useradd添加用户时,出现错误: Creating mailbox file: File exists? 为什么会出现这样的问题? 原来linux下添加用户后,会在系统里自动加一个 ...

  8. hash冲突解决和javahash冲突解决

    其实就是四种方法的演变 1.开放定址法 具体就是把数据的标志等的对长度取模 有三种不同的取模 线性探测再散列 给数据的标志加增量,取模 平方探测再散列 给数据的标志平方,取模 随机探测再散列 把数据的 ...

  9. Java小对象的解决之道——对象池(Object Pool)的设计与应用

    一.概述 面向对象编程是软件开发中的一项利器,现已经成为大多数编程人员的编程思路.很多高级计算机语言也对这种编程模式提供了很好的支持,例如C++.Object Pascal.Java等.曾经有大量的软 ...

最新文章

  1. 学习旧岛小程序 (1) flex 布局
  2. typescript获取数据库数据_肿瘤药敏多组学数据库(GDSC)的数据介绍和获取
  3. C# MVC 用户登录状态判断
  4. 48 - LeetCode 122 121. 买卖股票的最佳时机
  5. 【PHP】字符串-访问子串
  6. Ubuntu安装R及RStudio
  7. mysql5.095下载_战舰世界095版本
  8. sftp本地上传和远程下载
  9. Vensim软件中文介绍
  10. 个人商业画布分析-0408-v1.0王玉娟
  11. 联想拯救者Y7000p+Nvidia rtx2060 显卡驱动安装
  12. 7-6 华氏度转摄氏度(四舍五入)
  13. -XX:SurvivorRatio 命令解释
  14. bat运行Java程序
  15. MATLAB火灾自动报警与消防控制系统
  16. python课程设计结果分析_python课程设计报告总结和体会
  17. Tapestry介绍
  18. 强化云原生基础服务,焱融科技 YRCloudFile 与秒云完成产品兼容性互认证
  19. 用皮尔逊相关系数检查特征间的线性相关关系
  20. 如何在Python中调用MATLAB

热门文章

  1. 移动端h5丶小程序自定义凹陷tabbar中间悬浮按钮思路分享
  2. oracle 找子表,oracle多表查询和子查询练习
  3. 瑞萨单片机及其开发环境
  4. 获取服务器的ip地址
  5. 常见的距离算法和相似度计算方法简介,重点介绍海明距离
  6. mysql数据库中添加,删除表字段的操作
  7. 跨境物流小包费用怎么计算?
  8. 常见的信息安全与主机安全
  9. 计算机系统市场研究报告,计算机系统集成分析报告_2020-2025年中国计算机系统集成行业市场深度研究及发展前景投资可行性分析报告_报告大厅www.chinabgao.com...
  10. 数据分析利器Python——爬虫(含爬取过程、Scrapy框架介绍)