Java
 Computer >> コンピューター >  >> プログラミング >> Java

Javaでタイマースレッドを実装するにはどうすればよいですか?


タイマー クラスは、特定の時間に1回または繰り返し実行するタスクをスケジュールします。デーモンスレッドとしてバックグラウンドで実行することもできます。タイマーをデーモンスレッドに関連付けるために、ブール値のコンストラクターがあります。 価値。タイマーは、固定遅延でタスクをスケジュールします また、固定料金 。固定遅延で、実行がシステムGCによって遅延した場合 、他の実行も遅延し、すべての実行は前の実行に対応して遅延します。固定レートで、実行がシステムGCによって遅延した場合 次に、最初の実行開始時間に対応する固定レートをカバーするために、2〜3回の実行が連続して行われます。 Timerクラスはcancel()を提供します タイマーをキャンセルする方法。このメソッドが呼び出されると、タイマーは終了します。 Timerクラスは、 TimerTaskを実装するタスクのみを実行します。 。

import java.util.*;
public class TimerThreadTest {
   public static void main(String []args) {
      Task t1 = new Task("Task 1");
      Task t2 = new Task("Task 2");
      Timer t = new Timer();
      t.schedule(t1, 10000); //  executes for every 10 seconds
      t.schedule(t2, 1000, 2000); // executes for every 2 seconds
   }
}
class Task extends TimerTask {
   private String name;
   public Task(String name) {
       this.name = name;
   }
   public void run() {
      System.out.println("[" + new Date() + "] " + name + ": task executed!");
   }
}
出力
[Thu Aug 01 21:32:44 IST 2019] Task 2: task executed!
[Thu Aug 01 21:32:46 IST 2019] Task 2: task executed!
[Thu Aug 01 21:32:48 IST 2019] Task 2: task executed!
[Thu Aug 01 21:32:50 IST 2019] Task 2: task executed!
[Thu Aug 01 21:32:52 IST 2019] Task 2: task executed!
[Thu Aug 01 21:32:53 IST 2019] Task 1: task executed!
[Thu Aug 01 21:32:54 IST 2019] Task 2: task executed!
[Thu Aug 01 21:32:56 IST 2019] Task 2: task executed!
[Thu Aug 01 21:32:58 IST 2019] Task 2: task executed!
[Thu Aug 01 21:33:00 IST 2019] Task 2: task executed!

  1. JavaでJToggleButtonを実装するにはどうすればよいですか?

    JToggleButton JToggleButton AbstractButtonの拡張です また、オンに切り替えることができるボタンを表すために使用できます。 およびオフ 。 JToggleButtonの場合 を初めて押すと、押したままになり、2回押すと離すことができます。 JToggleButton ActionEventを生成します 押すたびに。 JToggleButton ItemEventを生成することもできます 、このイベントは、選択の概念をサポートするコンポーネントによって使用されます。 JToggleButtonの場合 を押すと選択されます。

  2. JavaでJWindowを使用してスプラッシュ画面を実装するにはどうすればよいですか?

    JWindow は、ユーザーのデスクトップのどこにでも表示できるコンテナです。 タイトルバーはありません 、ウィンドウ 管理 ボタン、 JFrameのようなものです。 JWindow JRootPaneが含まれています その唯一の子クラスとして。 contentPane JWindowの子の親になることができます 。 JFrameのように 、 JWindow は別のトップレベルのコンテナであり、装飾されていないJFrameとして機能します。 タイトルバー、ウィンドウメニューなどの機能はありません 、など。 JWindow スプラッシュ画面ウィンドウとして使用できます これ