在global.asax文件中修改application的值时为什么一定要加锁,该如何解决
在global.asax文件中修改application的值时为什么一定要加锁
当然,知道加锁的原因是:保证在同一时刻只有一个客户可以修改和存取Application对象的属性
但我还真没有碰到"同一时刻有多个客户修改和存取Application对象的属性"会产生什么后果,请问,这样会产生什么样的后果呢?
很少做网站,比较好奇,呵呵,请高手解释下。
------解决方案--------------------
当然,知道加锁的原因是:保证在同一时刻只有一个客户可以修改和存取Application对象的属性
但我还真没有碰到"同一时刻有多个客户修改和存取Application对象的属性"会产生什么后果,请问,这样会产生什么样的后果呢?
很少做网站,比较好奇,呵呵,请高手解释下。
------解决方案--------------------
- C# code
Application.Lock(); Application.UnLock();
------解决方案--------------------
Application对象是所有全站用户共用的,有可能冲突导致数据丢失的
Application.Lock()
Application["xx"] = "xx"
Application.UnLock()
建议使用Cache对象