2022.11.25
Javaプログラミング
プログラムを一定時間停止する方法
プログラムを一定時間停止するメソッド
Thread.sleepメソッド
public static void sleep( long millis )
・システムタイマーとスケジューラが正確であることを前提として、現在実行中のスレッドを、指定されたミリ秒数の間、スリープ (一時的に実行を停止) させます。 パラメータ millis : スリープさせるミリ秒数 戻り値 なし
Javaソースコード
以下は、Thread.sleepメソッドを使ったJavaプログラムの例です。
停止する時間は5秒にしています。秒数を変更してお試しください。
Wait5Sec.java
001 002 003 004 005 006 007 008 009 010 011 012 013 014 015 016 017 018 019 020 021
public class Wait5Sec { public static void main(String[] args) { // 待ち時間(秒)を設定 long sec = 5; // "開始"をコンソール出力 System.out.println( "開始" ); // 指定ミリ秒プログラムを停止 try { Thread.sleep( sec * 1000 ); } catch ( InterruptedException e ) { // 失敗したときの処理 e.printStackTrace(); return; } // "終了"をコンソール出力 System.out.println( "終了" ); } }
実行結果
実行
java Wait5Sec
出力結果
開始 終了
”開始”コンソール出力された5秒後に、”終了”が出力されます。
Javaソースコードの解説
001
public class Wait5Sec {
クラス名を、Wait5Secとしています。
002
public static void main(String[] args) {
このmainメソッドからプログラムを実行します。
003 004
// 待ち時間(秒)を設定 long sec = 5;
006 007
// "開始"をコンソール出力 System.out.println( "開始" );
009 010 011 012 013 014 015 016
// 指定ミリ秒プログラムを停止 try { Thread.sleep( sec * 1000 ); } catch ( InterruptedException e ) { // 失敗したときの処理 e.printStackTrace(); return; }
Thread.sleepメソッドの引数に変数secに1000を掛けた値を与えています。secは秒なので、1000を掛けてミリ秒に変換しています。
例外処理は、try { ~ } catch { ~ }で対応しています。
018 019
// "終了"をコンソール出力 System.out.println( "終了" );
以上です。