marți, 25 mai 2010

Hai la cod, la cod, la cod! (3)

Oare cind o intelege lumea ca double-checked locking e clever but broken?! Asta ca sa nu mai vorbim de singleton in general... O fi chiar asa de greu?!

Iaca ce am gasit mai deunazi intr-o clasa care e prin definitie accesata de multiple threaduri...
Adicatelea cam ca la 1907: ar cam vrea sa impropietareasca taranii cu cite o bucatica de pamint... Numa' ca s-ar putea sa le-o cam dea pe aceeasi!

public static UHRoutingServices getInstance() throws UHException
{
if (m_instance == null)
{
synchronized (UHRoutingServices.class)
{
if (m_instance == null)
{
m_instance = new UHRoutingServices();
}
}
}
return m_instance;
}