62,047
社区成员
发帖
与我相关
我的任务
分享
public class Utility
{
private state Hashtable sessionContainers=new Hashtable();
private static readonly lockObj=new object();
public static long GetGuid()
{
var sessionKey=(long)(DateTime.Now - time).TotalMilliseconds;
if(!HasSessionExist(sessionKey.ToString())
{
lock(lockObj)
{
if(!HasSessionExist(sessionKey.ToString())
{
sessionContainers.Add(sessionKey.ToString(),sessionKey)
return sessionKey;
}
}
}
return sessionContainers[sessionKey];
}
private bool HasSessionExist(string seesionKey)
{
return sessionContainers.ContainsKey(sessionKey);
}
}
其中 你的key也可能不是你想要的 ,换成你自己的 就可以 ,思路是上面这样的。代码 手敲写的 ,自己调调。
public class Utility
{
private static lockObj=new object();
public static long GetGuid()
{
lock(lockObj)
{
return (long)(DateTime.Now - time).TotalMilliseconds;
}
}
}
这个绝对不会重复了。