文章详情页
java 随机延迟执行
浏览:140日期:2023-11-18 14:01:38
问题描述
怎么让一个程序延迟执行,指定延迟时间访问,比如收到请求后对该请求进行记录,让后续操作在一天呢延迟执行
问题解答
回答1:可以使用调度框架 quartz
回答2:1.收到数据存库记录下来
2.linux下可以使用crond进行定时任务检查任务,并调用java提供得触发任务接口
3.把任务加入redis,使用java进行定时处理。
回答3:收到一个请求就创建一个线程,用ScheduledThreadPoolExecutor方法在固定的延迟后执行。
回答4:SpringMVC里面的Quartz,可以自由配置多个定时的任务
回答5:如果是Java Web项目,就在后台启动一个Servlet,例如<servlet><servlet-name>servlet的名字</servlet-name><servlet-class>servlet所在的包的路径</servlet-class> <load-on-startup>1</load-on-startup></servlet>
并在后台维护一个线程池,将需要延迟执行的请求加入到线程池中,并为每个线程加上时间标识,以便后续检查,Servlet定期从线程池中取出线程,检查是否该执行,如果满足执行条件,则执行,如果不满足,就将线程放回线程池。如果不是Web项目,可以使用Java的Timer,同时也维护一个线程池,使用Timer定时去做检查。
标签:
java
相关文章:
1. sql语句 - mysql中关联表查询问题2. css - chrome下a标签嵌套img 显示会多个小箭头?3. javascript - 求解答:实例对象调用constructor,此时constructor内的this的指向?4. javascript - 如何将一个div始终固定在某个位置;无论屏幕和分辨率怎么变化;div位置始终不变5. javascript - vscode alt+shift+f 格式化js代码,通不过eslint的代码风格检查怎么办。。。6. html - vue项目中用到了elementUI问题7. javascript - 有什么比较好的网页版shell前端组件?8. javascript - 原生canvas中如何获取到触摸事件的canvas内坐标?9. mysql updtae追加数据sql语句10. javascript - iframe 为什么加载网页的时候滚动条这样显示?
排行榜
