怎样做一个不受系统时间影响的定时程序?

mind_1220 2006-03-08 05:09:27
RT.
我需要做一个定时器,但是这个定时器不能受到 系统时间的影响
哪个朋友帮个忙。
谢谢
...全文
274 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
zorro09 2006-03-09
  • 打赏
  • 举报
回复
不用本机的时间就用数据库的时间啊,如果都不能用,那就请楼下的来
polarman 2006-03-09
  • 打赏
  • 举报
回复
能上网吗?把这段代码保存为time.html,可以取到标准时间

<div align="center">
<span id=serverTime>正在同步...</span>
<script>
var dayNames = new Array("星期日","星期一","星期二","星期三","星期四","星期五","星期六");

var xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");

xmlhttp.open("GET", "http://www.time.ac.cn", false);

xmlhttp.setRequestHeader("Range", "bytes=-1");

xmlhttp.send();
var tts =new Date(xmlhttp.getResponseHeader("Date"));
serverTime.innerHTML="<span style='font-size:63px;font-family:黑体;color:red;'>" + tts.getYear()+"年"
+(tts.getMonth()+ 1)+"月"+tts.getDate() + "日"
+"</span><br><span style='font-size:90px;font-family:Verdana, Arial, Helvetica, sans-serif;color: #000000;'>"
+tts.getHours()+":"+tts.getMinutes()
+":"+tts.getSeconds()+"</span><br><span style='font-size:63px;font-family:黑体;color:yellow;'>"
+ dayNames[tts.getDay()] + "";
setInterval("tts.setSeconds(tts.getSeconds()+1);serverTime.innerHTML='<span style=font-size:63px;font-family:黑体;color:red;>' + tts.getYear()+'年'+(tts.getMonth()+ 1)+'月'+tts.getDate()+'日'+'</span><br><span style=font-size:90px;font-family:Verdana, Arial, Helvetica, sans-serif;color: #000000;>'+tts.getHours()+':'+tts.getMinutes()+':'+tts.getSeconds()+'</span><br><br><span style=font-size:63px;font-family:黑体;color:yellow;>'+ dayNames[tts.getDay()] +'</span>';",1000);
</script>

</div>
mind_1220 2006-03-09
  • 打赏
  • 举报
回复
polarman(北极人):
sleep不行
我尝试过的。
还有我这个就是单机的。。。
polarman 2006-03-09
  • 打赏
  • 举报
回复
Thread.sleep(1000 * 600)
不知会不会受系统时间影响,楼主可试试
如果不行的化,还有一种解决办法,用一台机器做时间服务器,取这台机器的时间为标准时间,不用本机的时间
mind_1220 2006-03-09
  • 打赏
  • 举报
回复
我举一个例子
我开始计时的时间是 5:00
我需要在10分钟后也就是5:10
触发一个事件。
如果正常情况下
用Timer或者Thread都可以完成
但是如果 有人去修改了系统时间 那么就不行了
我现在想知道如何可以 排出 系统时间对 定时器的干扰?
谢谢
zx2002027 2006-03-08
  • 打赏
  • 举报
回复
不太明白楼主的意思
tomuno 2006-03-08
  • 打赏
  • 举报
回复
用事件来划分事件
如登录一次,时间+1
mind_1220 2006-03-08
  • 打赏
  • 举报
回复
我理解你的意思
但是我怎么可能知道过去了1秒的时间呢?
这个是最关键的
我尝试了用Timer和Thread 都不可以阿。

我想知道 Java中有没有类似Js的 settimeout的方法?
tomuno 2006-03-08
  • 打赏
  • 举报
回复
运动的尺可以缩短,时间的钟可以变慢
持久化数据,如在数据库中定义一个字段,用来存贮时间,数字+1代表时间过去1秒
项目描述 本系统是一套极速开发微信小程序的商城系统,主要包括用户管理、角色管理、部门管理、菜单管 理、定时任务、文件上传、数据权限、Redis 缓存、前后台统一异常处理等系统通用功能,还拥有一套完整的商城后台管理系统、微信小程序源码、小程序接口服务、以及完善的支付流程,极大缩短项目的开发周期。 项目特点 ◆ shop-wechat-mall 采用 Spring、MyBatis、Shiro、swagger 框架开发。 ◆ 灵活的权限控制,可控制到页面或按钮,满足绝大部分的权限需求。 ◆ 完善的部门管理及数据权限,通过注解实现数据权限的控制。 ◆ 支持 MySQL 数据库。◆ 多个团队协作开发,有效降低核心代码泄露。 ◆ 推荐使用阿里云服务器部署本系统项目介绍 shop-admin 后台模块,也是系统的核心,用来开发后台管理系统。 shop-api 接口模块,是小程序商城的接口开发模块。实现了微信用户登录、接口权限认证、获取登录用户、商城首页、专题、分类、 购物车、个人中心等功能,为小程序商城接口的安全调用,提供一套完整的解决方案。 shop-common 公共模块,其他模块以 jar 包的形式引入进去,主要提供些工具类,以 及 shop-admin、shop-api 模块公共的 entity、mapper、dao、service 服务,防止一个功能重复多次编写代码。 shop-framework 系统 web 合并模块,最终项目打包部署模块。最后会介绍为什么会设计此模块,以及设计此模块的意图。 shop-gen 代码生成器模块,只需在数据库里,创建好表结构,就可以生成增、删、改、查等操作的代码,包括 entity、mapper、 dao、service、controller、页面等所有代码,项目开发神器。 shop-schedule 定时任务模块,使用开源框架 quartz 实现分布式定时任务,动态添加、修改、删除、暂停、恢复、立即执行定时任务。 shop-shop 商城后台管理系统,实现了商城的后台管理功能。 wx-mall 商城小程序端源码 开发使用到的软件和工具 Xshell6、Xftp6、Tomcat8.0.33、jdk1.8、MySQL5.7、redis4.0.1 本地部署 ◆ 配置环境(推荐 jdk1.8、maven3.3、tomcat8、mysql5.5+、redis4.0.1) 本机启动 redis 服务、mysql 数据库初始化项目 ◆ 创建数据库 shop-shop,数据库编码为 UTF-8,执行数据库脚本_sql/shop.sql、sys_region.sql、更新脚本.sq ◆ 启动项目之前修改 dev/shop.properties,修改数据库账号和密码,wx.appId、wx.secret、wx.mchId、wx.paySignKey ◆ 修改 j2cache.propertie 配置 redis.hosts 和 redis.password 使用 IDEA 启动项目 配置 tomcat启动成功,访问 http://localhost账号密码:admin/admin Swagger 路径 http://localhost/swagger-ui.html 小程序接口路径 http://localhost/api/ 使用微信 web 开发者工具启动 wx-mall 导入 wx-mall 到微信 web 开发者工具修改 config/api.js 配置开发模式设置     

62,612

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧