社区
Java EE
帖子详情
java程序,执行时,因为各种问题延时,怎么处理
eternal9015
2017-07-17 10:03:24
比如,java做了一个拍卖的功能,到点之后就自动开始拍卖。那么在开始拍卖的时候会做一个“开始”的工作处理。那么这个动作如何保证它能够准时执行,而不因为各种原因延迟(比如延迟10ms)。不要觉得一个延迟10ms不是问题,如何有很多并发的程序都是同时定时执行,那么这个定时时间如何保证准时呢?
...全文
346
4
打赏
收藏
java程序,执行时,因为各种问题延时,怎么处理
比如,java做了一个拍卖的功能,到点之后就自动开始拍卖。那么在开始拍卖的时候会做一个“开始”的工作处理。那么这个动作如何保证它能够准时执行,而不因为各种原因延迟(比如延迟10ms)。不要觉得一个延迟10ms不是问题,如何有很多并发的程序都是同时定时执行,那么这个定时时间如何保证准时呢?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
4 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
Exception e
2017-07-20
打赏
举报
回复
把他做成定时任务,然后配置文件里面配置一下,不过要考虑多台服务器问题,做一个任务锁,防止出现重复现象
fuladinuo
2017-07-18
打赏
举报
回复
加个定时器,定时执行“开始”的方法。
lyn584238910
2017-07-18
打赏
举报
回复
引用 1 楼 fuladinuo 的回复:
加个定时器,定时执行“开始”的方法。
keke8247
2017-07-18
打赏
举报
回复
基本上都是用定时任务实现.
Java
实现延迟
执行
代码
使用TimeUnit.XXX.sleep(y),可读性更好,其中xxx是休眠的
时
间单位,如SECONDS, MINUTES等,y是数量。catch捕获sleep方法的异常是很好的实践方式。当
Java
查询运行
时
,它在操作系统上产生一个进程,其至少包含一个线程————主线程负责查询运行。而且,
Java
支持多线程,
程序
可以创建新的线程与主线程并行或异步
执行
。接口可以安排代码在指定的延迟或固定的
时
间间隔后运行一次。方法还可以产生更精确的
时
间间隔,因为它可以防止漂移
问题
。以固定
时
间间隔
执行
,可以使用。
java
让
程序
延迟
执行
_
Java
如何
处理
延迟任务过程解析
1、利用延迟队列
延
时
队列,第一他是个队列,所以具有对列功能第二就是
延
时
,这就是
延
时
对列,功能也就是将任务放在该
延
时
对列中,只有到了
延
时
时
刻才能从该
延
时
对列中获取任务否则获取不到……应用场景比较多,比如
延
时
1分钟发短信,
延
时
1分钟再次
执行
等,下面先看看
延
时
队列demo之后再看
延
时
队列在项目中的使用:简单的
延
时
队列要有三部分:第一实现了Delayed接口的消息体、第二消费消息的消费者、第三存放消息的延...
java
实现
延
时
处理
业务场景: 1.数据库轮询 1.1 思路 1.2 实现 1.2.1在启动类上添加注解@EnableScheduling,如下图所示: 1.2.2 创建配置类,添加注解@Scheduled 1.3 优缺点 2.JDK的延迟队列 2.1 思路 2.2 实现 2.3 优缺点 3.
时
间轮算法 3.1 思路 3.2 实现 3.2.1 添加maven依赖 3.2.2 具体实现 3.3 优缺点 4.redis缓存 4.1 利用redis的zset 4.1.1 添加redis依赖 4...
【项目实战】并发编程之
Java
中使用五种方式实现
延
时
执行
调用
To实现
延
时
执行
调用,
Java
中可以使用Thread.sleep()方法。该方法接受一个以毫秒为单位的
时
间参数,使当前线程休眠指定的
时
间。在休眠期间,线程不会
执行
任何操作。在上面的代码块中,使用try-catch块来捕获InterruptedException异常。这是因为Thread.sleep()方法可能会抛出该异常,如果线程在休眠期间被中断,则会抛出该异常。在catch块中,我们简单地打印了异常堆栈跟踪,但您可以根据需要采取其他措施。
如何在
Java
中实现延迟
执行
?
本文介绍了在
Java
中实现延迟
执行
的几种常用方法,包括使用Thread.sleep()方法、ScheduledExecutorService和Timer类。在上述代码中,我们创建了一个ScheduledExecutorService实例,并使用schedule()方法来安排任务的延迟
执行
。在
Java
中,我们可以使用不同的方法来实现延迟
执行
,以便控制
程序
的
执行
时
间。在上述代码中,通过调用Thread.sleep(3000)方法,
程序
将会暂停
执行
3秒钟,然后输出"延迟3秒后
执行
"。
Java EE
67,513
社区成员
225,879
社区内容
发帖
与我相关
我的任务
Java EE
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
复制链接
扫一扫
分享
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章