All articles

Csúnya multithreading hiba

Published 2011-01-21 - Last modified 2011-01-21

Original: https://soci.hu/blog/index.php/2011/01/21/csunya-multithreading-hiba/

Double checked lockingnak indult, de bug lett belőle. Mit rontottam el?

private static volatile Dictionary> holidayDays;
private static readonly object staticLock = new object();

private Dictionary> GetHolidayDays()
{
if (holidayDays == null)
{
lock (staticLock)
{
if (holidayDays == null)
{
holidayDays = new Dictionary>();
FillTradingHours(holidayDays, “HOL”);
}
}
}
return holidayDays;
}