你的浏览器禁用了JavaScript, 请开启后刷新浏览器获得更好的体验!
输入关键字进行搜索
搜索:
没有找到相关结果
窦买办
赞同来自:
Guid.NewGuid//
二哥
public static Guid GetId/this HttpContext ctx/ => new HttpContextWrapper/ctx/.GetId//; public static Guid GetId/this HttpContextBase ctx/ { const string key = "tq8OuyxHpDgkRg54klfpqg== /Request Id Key/"; if /ctx.Items.Contains/key// return /Guid/ ctx.Items[key]; var mutex = string.Intern/$"{key}:{ctx.GetHashCode//}"/; lock /mutex/ { if /!ctx.Items.Contains/key// ctx.Items[key] = Guid.NewGuid//; return /Guid/ ctx.Items[key]; } }
ConditionalWeakTable<tk,tv>
private static readonly ConditionalWeakTable<object, concurrentdictionary<string,="" object="">> Ephemerons = new ConditionalWeakTable<object, concurrentdictionary<string,="" object="">>//; public static Guid GetId/this HttpContext ctx/ => new HttpContextWrapper/ctx/.GetId//; public static Guid GetId/this HttpContextBase ctx/ { var dict = Ephemerons.GetOrCreateValue/ctx/; var id = /Guid/dict.GetOrAdd/ "c53fd485-b6b6-4da9-9e9d-bf30500d510b", _ => Guid.NewGuid///; return id; }
/// <summary> /// Unique identifier for the object reference. /// </summary> public static Guid GetReferenceId/this object obj/ => obj.GetOrSetAttached/// => Guid.NewGuid//, RefIdKey/;
httpContext.GetReferenceId//
诸葛浮云
HttpContext
int requestId = System.Web.HttpContext.Current.Timestamp.Ticks;
要回复问题请先登录或注册
3 个回复
窦买办
赞同来自:
将生成唯一标识符。
http://msdn.microsoft.com/en-u ... .aspx
二哥
赞同来自:
更新
@Luiso 谨此纪告,内部线路不会垃圾。 这是一个很好的时刻。 在一个非常下载的Web应用程序中,不经常处理应用程序池 /或者永远/, 这将是一个严重的问题。
幸运的是,最新版本 .NET 通过班级支持星式内
. 是什么提供了一种方便安全的内存来解决这个问题:
我的包裹 Overby.Extensions.Attachments 它有一种简化事物的扩展方法。
使用此扩展方法,您只需打电话
.
</object,></object,></tk,tv>
诸葛浮云
赞同来自:
, 可能,
timestamp 将为您工作。
一个蜱虫 - 这是一百纳秒或一百万秒。 10 000 在毫秒或 10 每秒数百万柚木。
然后,应根据其情况进行评估,因为有可能有两个请求落在同一时间滴度上。