0
Thread.currentThread()。getId()返回线程标识符,但线程ID是如何由编译器决定的。还存在用于特定的线程的任何方式设置。因为ID有像SETID没有方法在多线程中getId方法如何决定任何线程的ID
Thread.currentThread()。getId()返回线程标识符,但线程ID是如何由编译器决定的。还存在用于特定的线程的任何方式设置。因为ID有像SETID没有方法在多线程中getId方法如何决定任何线程的ID
在java中8线程ID被发放顺序上施工的螺纹(从Thread
所采取)的:
private static synchronized long nextThreadID() {
return ++threadSeqNumber;
}
作为Thread.getId()
状态API文档中,ID被答应是唯一的和恒定期间它的寿命:
返回该线程的标识符。线程ID是创建此线程时生成的正数 长整数。 线程ID是唯一的,并且在其生命周期中保持不变。 当一个线程被终止时,这个线程ID可能被重用。
因此,更改线程ID是不可能的,并且允许更改ID将违反此规定。
同意谢谢:) –
也许没有'setId'是因为我不相信程序员来设置它。你为什么想让程序员设置它?但是,您可以设置名称。 –
为什么你需要设置线程ID?你想达到什么目的?编译器如何处理ThreadID?每次在运行时创建新的线程时,它都会增加。 – rkosegi