Когда у меня есть этот код:Список <T> (Список <T>) Конструктор потокобезопасный?
public static List<Module> ExtensionList
{
get
{
return new List<Module>(Extensions);
}
}
является его поточно? например. он делает блокировку на Extensions
, пока он копирует список? или я должен явно сделать это:
public static List<Module> ExtensionList
{
get
{
lock (Extensions)
{
return new List<Module>(Extensions);
}
}
}
No. Согласно MSDN, все не статические члены в '' Список не guarraned потокобезопасной: «Общественный статический (Shared в Visual Basic) члены этого типа являются потокобезопасными. Любые члены экземпляра не гарантируют безопасность потоков. " Подробнее: http://msdn.microsoft.com/pl-pl/library/6sh2ey19(v=vs.110).aspx –
2014-09-05 07:41:21
@pwas почему это плохая практика? вы можете уточнить? спасибо – Petr