在我的多线程应用程序中,我使用一些可以被多个实例同时修改的变量。虽然很奇怪但是它一直运行得很好,没有任何问题...但是当然我需要使其线程安全。我刚开始学习锁,所以希望您的建议:
当客户端连接时,会创建一个名为Client的类,每个Client都有自己的"A"变量。
有时候,Client会调用如下的方法:
Client selectedClient SelectOtherClientClassByID(sentID);
selectedClient.A=5;
目前即使有5个类同时执行(线程池),也没有出现问题,但我在思考是否需要为A属性添加锁定?
例如:
A {
get { return mA; }
set {
// use lock here for settting A to some value
}
}
这样可以吗?