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