位置:首页 > Java技术 > java.lang > java.lang.ThreadLocal.initialValue()方法实例

java.lang.ThreadLocal.initialValue()方法实例

java.lang.ThreadLocal.initialValue() 方法返回此线程当前线程局部变量的初始值。

声明

以下是java.lang.ThreadLocal.initialValue()方法的声明

protected T initialValue()

参数

  • NA

返回值

此方法返回此线程局部的初始值。

异常

  • NA

例子

下面的例子显示java.lang.ThreadLocal.initialValue()方法的使用。

package com.yiibai;

import java.lang.*;

public class ThreadLocalDemo {

   public static void main (String [] args) {

      newThread t1 = new newThread("R");
      newThread t2 = new newThread("S");

      // this will call run() method
      t1.start();
      t2.start();
   }
}

class newThread extends Thread
{
   private static ThreadLocal t =
      new ThreadLocal()
          {
             protected Object initialValue() {
                return new Integer(n--);
             }
          };

   private static int n = 10;
   newThread(String name) {
      super(name);
   }

   public void run() {
      for(int i = 0; i < 2; i++)
           System.out.println (getName() + " " + t.get());
   }
} 

让我们来编译和运行上面的程序,这将产生以下结果:

R 10
R 10
S 9
S 9