Хорошо, вот собственность, которую я имею
public List<String> names{
get{
lock(_names)
return _names;
}
set{
lock(_names)
_names = value
}
}
private List<String> _names;
и теперь скажите, что я делаю foreach для имен, подобных этому
foreach(String s in names)
{
Console.WriteLine(s);
}
У меня вопрос: names
заблокировано через все foreach
, или оно только lock
каждый раз, когда устанавливается s
, затем разблокируется внутри foreach
.
Если это сбивает с толку, скажите, что я пытаюсь сделать это
foreach(String s in names)
{
lock(names)
Console.WriteLine(s);
}
Я попаду в тупик?