Java线程ID创建时间

时间:2011-08-31 15:40:37

标签: java multithreading

我想知道Java中的线程的Id何时被创建。它是在创建实例的时刻还是在使用start方法启动之后?

感谢。

4 个答案:

答案 0 :(得分:4)

实例化时。

public Thread() {
   init(null, null, "Thread-" + nextThreadNum(), 0);
}

private void init(ThreadGroup g, Runnable target, String name, long stackSize) {
   ...
   /* Set thread ID */
   tid = nextThreadID();
   ...
}

答案 1 :(得分:0)

它在Thread构造函数上初始化。

此处实施的代码段:

/* Set thread ID */
tid = nextThreadID();

答案 2 :(得分:0)

实例创建时

答案 3 :(得分:0)

从Thread.getId()返回的源代码id在创建Thread实例时(即在其构造函数中)初始化,无论何时实际启动此Thread实例。