Files
raven/server/AyaNova/util/AutoId.cs
2018-10-08 20:07:38 +00:00

26 lines
579 B
C#

using System;
using System.Threading.Tasks;
namespace AyaNova.Util
{
public class AutoId
{
private readonly object valueLock = new object();
private uint currentValue; //postgre bigint
public AutoId(uint initialValue)
{
currentValue = initialValue;
}
public uint GetNext()
{
lock (valueLock)
{
currentValue += 1;
if (currentValue == 0)
currentValue += 1;
return currentValue;
}
}
}
}