我想实现如下功能:
    一个服务端一个客户端,在客户端显示一些信息,信息的来源是从服务端获得,我在向服务端发消息的时候会防止用户离开该页面,把该页面的所有功能都锁上来。只有接收到回来的信息显示在页面上才可以解锁,但是要是没有收到服务端的信息的话就永远锁上了,我想做一个时间判断,当时间超过15秒后,就自动解锁。当在15秒之内返回消息就停止时间判断。但是我不知道如何停止这个时间判断
import java.util.Timer;
import java.util.TimerTask;public class OverTimer {
    private final Timer timer = new Timer();
    private final int miao;    public OverTimer (int miao) {
        this.miao = miao;
    }    public void start() {
        timer.schedule(new TimerTask() {
            public void run() {
                playSound();
                timer.cancel();
            }
            private void playSound() {
                System.out.println("解锁!");
               
            }
        }, miao * 1000);
    }    public static void main(String[] args) {
        OverTimer eggTimer = new OverTimer(15);
        eggTimer.start();
    }}
或者有别的什么更简单的方法?

解决方案 »

  1.   

    这是我的一个定时程序
    public static void main(String[] args)
          {
          timertask tt= new timertask();
          Timer timer=new Timer();
          timer.schedule(tt,15000);
          }
    class timertask extends TimerTask
       {
        public void run()
          {//你的操作 }
       }关键是timer.schedule(tt,15000);
    15000就是15000毫秒
      

  2.   

    修改timer.schedule(tt,0);定时器结束
      

  3.   

    你可以把修改修改timer.schedule(tt,0);这个说的详细些么?
    因为线程运行起来了 突然把时间变为0会不会有影响
      

  4.   

    看看这篇文章也许你有收获
    http://www.tech521.com/autoGenFile/techData/21/2176.htm