我想在多線程應用程序中使用System.currentTimeMillis()
的結果來生成唯一的ID。這是我的代碼:Java多線程。在不同的線程上使用相同的System.currentTimeMillis()值
class MyRunnableClass implements Runnable{
@Override
public void run() {
long thisValueShouldBeUnique = System.currentTimeMillis();
}
}
我啓動了10個運行MyRunnableClass對象的run()方法的線程。 是不是真的,有時System.currentTimeMillis()
在不同線程中的結果可能是一樣的?
唯一的id是什麼?主題? –
極有可能,您可能會將某個線程標識符連接到您的唯一值 –
如果您是啓動線程的人,爲什麼不在初始化時爲其提供唯一ID?您也可以使用Thread.currentThread()。getId() –