我写的Service是web通过remoting来访问的,返回为bool类型,在两个用户同时访问时,出现两个用户任务同时结束的情况,即结果一样,被service看作同一线程处理了。如何避免这种情况发生呢?
谢谢

解决方案 »

  1.   

    就是两个用户同时访问Service啊,我想当第一个用户访问完成,再让第二个用户访问
      

  2.   

    晕,就是保持单个用户调用service,是不是用到queue?
      

  3.   

    LZ是说的不太明白,无论是Web Service 还是Remoting,服务器接收的客户端的请求都是多线程并发的,是不是问如何对它们做线程同步? 最简单的办法: lock 就是了.
      

  4.   

    1.lz的描述有问题...
    2.lz的代码有问题...
      

  5.   

    RedGoldFish(红金鱼) 
    有没lock的实例,发个上来看看呗
      

  6.   

    RedGoldFish(红金鱼) 
    有没lock的实例,发个上来看看呗
    -------------------------------最简单的例子,这样拒绝两个线程同时访问MyProperty        private bool myVar;        public bool MyProperty
            {
                get 
                {
                    lock (this)
                    {
                        return myVar;
                    }
                }
                set 
                {
                    lock (this)
                    {
                        myVar = value;
                    }
                }
            }
      

  7.   

    呵呵,其实是debug生成的版本跟release版本出来的区别了。喔呵呵
    release才是多线程并发的。thanks all!