更新订单状态为锁定,锁定后不允许其他用户进行操作
状态更新时需要加锁,保证多用户操作时,状态一致
多个用户同时加锁时,只允许一个用户操作成功,其他用户返回订单状态不允许加锁
代码没有用到多线程,加lock有没有用
相关问题
- Generic Generics in Managed C++
- How to Debug/Register a Permanent WMI Event Which
- 'System.Threading.ThreadAbortException' in
- Bulk update SQL Server C#
- Should I use static function in c# where many call
如果是 ASP.NET 应用,天生就是多线程。
你这问题就有问题。用户又是多,代码又不是多线程...你是初写web程序?web程序只要不是特定得,几乎的框架本身就是多线程哈。如果是直接的客户端程序,多用户也不太可能不是“多线程”(不然还得自己实现时间片,通常只有写片子因为没有os,需要自己实现这玩意儿)。
订单在内存吗?内存的话你可以用 lock 锁住,如果在数据库。你程序 lock 有什么用
没有用到多线程,加lock当然多此一举。不过如果你做的是web项目,通常框架是把用户的一次请求用一个线程来处理的,是多线程,可以用lock。