我调用了多个线程来生成一个数字,但我想为所有线程生成一个唯一的“否”,(假设一个线程生成一个“否”,即 ABC1,但第二个线程必须生成 ABC2 等等)
最佳答案
您可以使用Interlocked.Increment
,它将完成计数器上的线程安全增量。
public class Person
{
private static int _counter;
public string GetNewId()
{
int id = Interlocked.Increment(ref _counter);
return $"ABC{id}";
}
}
关于c# - 如何以线程安全的方式生成连续的唯一ID,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53113423/