RT.
我需要做一个定时器,但是这个定时器不能受到 系统时间的影响
哪个朋友帮个忙。
谢谢

解决方案 »

  1.   

    我理解你的意思
    但是我怎么可能知道过去了1秒的时间呢?
    这个是最关键的
    我尝试了用Timer和Thread 都不可以阿。我想知道 Java中有没有类似Js的 settimeout的方法?
      

  2.   

    我举一个例子
    我开始计时的时间是  5:00
    我需要在10分钟后也就是5:10
    触发一个事件。
    如果正常情况下
    用Timer或者Thread都可以完成
    但是如果 有人去修改了系统时间 那么就不行了
    我现在想知道如何可以 排出 系统时间对 定时器的干扰?
    谢谢
      

  3.   

    Thread.sleep(1000 * 600)
    不知会不会受系统时间影响,楼主可试试
    如果不行的化,还有一种解决办法,用一台机器做时间服务器,取这台机器的时间为标准时间,不用本机的时间
      

  4.   

    polarman(北极人):
    sleep不行
    我尝试过的。
    还有我这个就是单机的
      

  5.   

    能上网吗?把这段代码保存为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>