陌上花開

          遇高山,我御風(fēng)而翔,逢江河,我凌波微波

             :: 首頁 :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理 ::

          在Java中有時(shí)候需要使程序暫停一點(diǎn)時(shí)間,稱為延時(shí)。普通延時(shí)用Thread.sleep(int)方法,這很簡單。它將當(dāng)前線程掛起指定的毫秒數(shù)。如

          Java 代碼復(fù)制內(nèi)容到剪貼板
          1. try
          2. {
          3. Thread.currentThread().sleep(1000);//毫秒
          4. }
          5. catch(Exception e){}

          在這里需要解釋一下線程沉睡的時(shí)間。sleep()方法并不能夠讓程序"嚴(yán)格"的沉睡指定的時(shí)間。例如當(dāng)使用5000作為sleep()方法的參數(shù)時(shí),線 程可能在實(shí)際被掛起5000.001毫秒后才會(huì)繼續(xù)運(yùn)行。當(dāng)然,對(duì)于一般的應(yīng)用程序來說,sleep()方法對(duì)時(shí)間控制的精度足夠了。

          但是如果要使用精確延時(shí),最好使用Timer類:

          Java 代碼復(fù)制內(nèi)容到剪貼板
          1. Timer timer=new Timer();//實(shí)例化Timer類
          2. timer.schedule(new TimerTask(){
          3. public void run(){
          4. System.out.println("退出");
          5. this.cancel();}},500);//五百毫秒

          這種延時(shí)比sleep精確。上述延時(shí)方法只運(yùn)行一次,
          如果需要運(yùn)行多次, 使用timer.schedule(new MyTask(), 1000, 2000); 則每間隔2秒執(zhí)行MyTask()

          posted on 2012-06-05 11:35 askzs 閱讀(362) 評(píng)論(0)  編輯  收藏

          只有注冊(cè)用戶登錄后才能發(fā)表評(píng)論。


          網(wǎng)站導(dǎo)航:
           
          我要啦免费统计
          主站蜘蛛池模板: 青岛市| 温州市| 嘉黎县| 历史| 江油市| 施秉县| 平阴县| 且末县| 周宁县| 武胜县| 纳雍县| 二连浩特市| 外汇| 平谷区| 获嘉县| 萍乡市| 开封县| 西峡县| 上犹县| 黑山县| 高台县| 博白县| 德清县| 浏阳市| 哈尔滨市| 河池市| 景宁| 威海市| 邯郸县| 沐川县| 元朗区| 四会市| 沿河| 固镇县| 凤凰县| 景洪市| 工布江达县| 登封市| 聊城市| 获嘉县| 德化县|