ThreadLocal属性
|
如果我们有一个
ThreadLocal
属性(每个线程都有它的唯一属性),那么哪个是正确的(我们不想使用自动setter / getter):
一种)
private ThreadLocal<MyClass> _someProperty = new ThreadLocal<MyClass>();
public ThreadLocal<MyClass> SomeProperty
{
get
{
return _someProperty.Value;
}
set
{
_someProperty.Value = value;
}
}
B)
private ThreadLocal<MyClass> _someProperty = new ThreadLocal<MyClass>();
public MyClass SomeProperty
{
get
{
return _someProperty.Value;
}
set
{
_someProperty.Value = value;
}
}
没有找到相关结果
已邀请:
2 个回复
呕蹿尉
,以便调用者只需要了解
即可;在这种情况下,您仍然需要显式访问ѭ5,因为这是发生每线程魔术的地方:
呢率篓舍烫
,则呼叫者可以写
,但您将无法阻止它。 通过强制所有访问权限遍历您的课程,您可以向设置器添加验证。 同样,第一种形式允许一个线程通过替换整个“ 0”实例来擦除其他线程上的属性值。 请注意,您的代码将无法编译;您需要返回并设置
。