c# socket 异步 全局静态变量
小弟最近在写一个TCP socket的程序,有一个全局静态变量(键值对),用于对某种消息接收后的处理,
但是目前存在一个问题,在接收数据里面有
两个处理,是处理
两种客户端数据的功能,第一个处理对全局变量进行修改(存储新的键值),另一个处理是对全局变量的读取。
并且存储肯定是在读取前,但是为什么读取不到存储过后的键值对。
小弟在这个问题上卡了很久了!麻烦大神的解答!谢谢!
------解决方案--------------------加lock
*****************************************************************************
签名档: http://feiyun0112.cnblogs.com/
------解决方案--------------------读和写的位置都要lock
------解决方案--------------------改变值的地方和读取值的地方都Lock
------解决方案--------------------再一个,要什么全局变量的,搞一个事件出来不就完事了么?绝对不存在加不加锁的问题了。
------解决方案--------------------静态成员,使用多线程的话有必要做线程同步处理,把静态成员里的值实时纪录下来应该就能看出问题了
------解决方案-------------------- mark lock unlock
------解决方案--------------------学习ing...