首页新闻找找看学习计划

关于Asp.net全局变量的问题

0
悬赏园豆:5 [已解决问题] 解决于 2012-07-19 08:46

我在Asp.net后置 代码里写了一个全局变量…… 

private string ItemSellNo; 

经理看到了说这个是全局变量,线程多了会出问题的,我就疑惑了,Asp.net每个请求不是都是独立的线程么,怎么还会出现线程问题?? 

博客园 的各位高手们你们说呢?最好提供个代码…… 

经理写了个代码: 

        public static readonly object obj = new object();

        /// <summary>
        /// 由于用到了全局变量
        /// 
        /// 
        /// 必须要避免线程竞争
        /// </summary>
        private string itemSellNo;

        public string ItemSellNo
        {
            get
            {
                lock (obj)
                {
                    return itemSellNo;
                }
            }
            set
            {
                lock (obj)
                {
                    itemSellNo = value;
                }
            }
        }
田麦成的主页 田麦成 | 小虾三级 | 园豆:1982
提问于:2012-07-18 17:22
< >
分享
最佳答案
0

private string ItemSellNo; 不存在线程问题

收获园豆:1
dudu | 高人七级 |园豆:39078 | 2012-07-18 17:46
其他回答(4)
1

一般来说这样写是没什么问题的,不用加锁

收获园豆:1
草根程序猿 | 园豆:129 (初学一级) | 2012-07-18 17:39
0

我只知道session,cookie是全局的,还有.NET MVC中的那个啥也是全局的,不知道private string ItemSellNo这样写也能变成全局,莫非是我肤浅了?

收获园豆:1
CrazyJinn | 园豆:799 (小虾三级) | 2012-07-18 18:24
0

不会有问题..别听你经理扯淡

收获园豆:1
56180825 | 园豆:1154 (小虾三级) | 2012-07-18 20:19
0

别听他扯这个!

收获园豆:1
Tom.汤 | 园豆:1953 (小虾三级) | 2012-07-19 01:41
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册