JAVA多线程成员方法

一、获取名字和设置名字

 String getName()
          返回该线程的名称。
 void setName(String name)
          改变线程名称,使之与参数 name 相同。

也可以能够通过Thread的构造方法传入String类型的名字

new Thread("线程1") {                      //通过构造方法给name赋值
   public void run() {
      System.out.println(this.getName() + "....aaaaaaaaa");
   }
}.start();

二、获取当前线程的对象

static Thread currentThread()
          返回对当前正在执行的线程对象的引用。
new Thread(new Runnable() {
   public void run() {
      //Thread.currentThread()获取当前正在执行的线程
      System.out.println(Thread.currentThread().getName() + "...bb");
   }
}).start();

三、休眠线程

static void sleep(long millis)
          在指定的毫秒数内让当前正在执行的线程休眠(暂停执行),此操作受到系统计时器和调度程序精度和准确性的影响。
new Thread() {
   public void run() {
      for(int i = 0; i < 10; i++) {
         try {
            Thread.sleep(1000);
         } catch (InterruptedException e) {
            
            e.printStackTrace();
         }
         System.out.println(getName() + "...aaaaaaaaaa");
      }
   }
}.start();

四、守护线程

 void setDaemon(boolean on)
          将该线程标记为守护线程或用户线程。

设置一个线程为守护线程,该线程不会单独执行,当其他非守护线程都执行结束后,自动退出

t2.setDaemon(true);

五、加入线程

 void join()
          等待该线程终止。
 void join(long millis)
          等待该线程终止的时间最长为 millis 毫秒。

join(),当前线程暂停,等待指定的线程执行结束后,当前线程再继续

join(int),可以等待指定的毫秒之后继续

六、礼让线程

static void yield()
          暂停当前正在执行的线程对象,并执行其他线程。

七、设置线程的优先级

 void setPriority(int newPriority)
          更改线程的优先级。
public final static int MIN_PRIORITY = 1;

public final static int NORM_PRIORITY = 5;

public final static int MAX_PRIORITY = 10;

作用不大

猜你喜欢

转载自blog.csdn.net/qq_40298054/article/details/87898909