C#:lock锁与订单号(或交易号)的生成
发布时间:2020-12-15 04:46:33 所属栏目:百科 来源:网络整理
导读:在弄电商类网站的时候,往往是根据年月日时分秒的格式生成订单号(yyyyMMddHHmmss),为了解决并发性,就直接在生成订单号的区域块加上lock。 下面,我们来简单测试一下。 1.新建项目(控制台应用程序) 2.新建一个类:OrderIdHelper.cs Locker = _tempId =
在弄电商类网站的时候,往往是根据年月日时分秒的格式生成订单号(yyyyMMddHHmmss),为了解决并发性,就直接在生成订单号的区域块加上lock。 下面,我们来简单测试一下。 1.新建项目(控制台应用程序) 2.新建一个类:OrderIdHelper.cs
Locker = _tempId =
(Locker)
orderId = + DateTime.Now.ToString();
( Exception(
_tempId =
}
3.Program.cs Main(
threads = Thread[
( thread
}
4.结果:========== 5.发现一个不错的订单号生成规则,稍作改动: (原网址)
Locker = _sn =
(Locker)
(_sn == _sn =
_sn++
Thread.Sleep(
+ DateTime.Now.ToString()+ _sn.ToString().PadLeft(, }
?6.关于使用GUID的个人见解。 ①不清楚生成的时间,不方便管理。 ②官方解释:。 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |