Почему использование блокировки, как в следующем коде, является плохой практикой, я предполагаю, что это плохая практика, основываясь на ответах в этом вопросе SO здесь
private void DoSomethingUseLess()
{
List otherProductList = new List();
Parallel.ForEach(myOriginalProductList, product =>
{
//Some code here removed for brevity
//Some more code here :)
lock (otherProductList)
{
otherProductList.Add((IProduct)product.Clone());
}
});
}
В ответах над там упоминается, что это плохая практика, но не говорится, почему
Примечание:Пожалуйста, не обращайте внимания на полезность кода, это просто для примера, и я знаю, что это совсем не полезно