Javaスレッド操作の一般的な方法【スレッド名取得、設定、スレッド起動判定など】


本論文の例は、Javaスレッド動作の一般的な方法を説明する。皆さんに参考にしてあげます。具体的には以下の通りです。
スレッド名の操作
1コード

public class GetNameThreadDemo extends Thread
{
  public void run()
  {
   for( int i = 0; i < 5; ++i )
   {
     printMsg();
     try
     {
      Thread.sleep(1000);    //   1 
     }
     catch( InterruptedException e )
     {
      e.printStackTrace();
     }
   }
  }
  public void printMsg()
  {
   //              
   Thread t = Thread.currentThread();
   String name = t.getName();
   System.out.println( "name = " + name );
  }
  public static void main( String[] args )
  {
   GetNameThreadDemo t1 = new GetNameThreadDemo();
   t1.start();
   for( int i = 0; i < 5; ++i )
   {
     t1.printMsg();
     try
     {
      Thread.sleep(1000);    //   1 
     }
     catch( InterruptedException e )
     {
      e.printStackTrace();
     }
   }
  }
}

2運転
name=main
name=Thread-0
name=main
name=Thread-0
name=main
name=Thread-0
name=main
name=Thread-0
name=main
name=Thread-0
二設定と取得スレッド名
1コード

public class GetSetNameThreadDemo implements Runnable
{
  public void run( )
  {
    Thread temp = Thread.currentThread( );//             
    System.out.println("           :" + temp.getName( ));
  }
  public static void main(String[] args)
  {
    Thread t = new Thread(new GetSetNameThreadDemo( ));
    t.setName("  _    ");
    t.start();
  }
}

2運転
この文を実行するスレッド名:スレッド_サンプル
三スレッドが起動されているかどうかを判断する。
1コード

public class StartThreadDemo extends Thread
{
  public void run()
  {
   for( int i = 0; i < 5; ++i )
   {
     printMsg();
   }
  }
  public void printMsg()
  {
   //              
   Thread t = Thread.currentThread();
   String name = t.getName();
   System.out.println( "name = " + name );
  }
  public static void main( String[] args )
  {
   StartThreadDemo t = new StartThreadDemo();
   t.setName( "test Thread" );
   System.out.println( "  start()     , t.isAlive() = " + t.isAlive() );
   t.start();
   System.out.println( "   start()    , t.isAlive() = " + t.isAlive() );
   for( int i = 0; i < 5; ++i )
   {
     t.printMsg();
   }
   //               ,    false,    true
   System.out.println( "main()      , t.isAlive() = " + t.isAlive() );
  }
}

2運転
start()メソッドを呼び出す前に、t.isAlive()=false
start()メソッドを呼び出した時、t.isAlive()=true
name=main
name=main
name=main
name=test Thread
name=main
name=test Thread
name=main
name=test Thread
main()メソッドが終了した場合、t.isAlive()=true
name=test Thread
name=test Thread
 
Process finished with exit code 0
もっと多くのjava関連の内容に興味がある読者は当駅のテーマを調べてもいいです。「Javaプロセスとスレッド操作テクニックのまとめ」、「Javaデータ構造とアルゴリズム教程」、「Java操作DOMノード技術のまとめ」、「Javaファイルとディレクトリの操作テクニックのまとめ」、「Javaキャッシュ操作テクニックのまとめ
本論文で述べたように、皆さんのjavaプログラムの設計に役に立ちます。