Singleton Uzorak samo jedan primjerak se stvara u multi threading

dok koristite singleton uzorak, samo jedan primjer je izrađen u više navoja?

Korištenje threadsafe Singleton klase će jamčiti da je samo jedan primjer je stvorio.

javni zatvoreni klasa Singleton
{
Privatni statički Singleton Singleton = null;
samo za čitanje privatnih statički objekt singletonLock = new objekt();

privatni Singleton() {}
public static Singleton GetInstance()
{
brava (singletonLock)
{
ako (Singleton == null)
{
Singleton = new Singleton();
}
povratak Singleton ;
}
}
}

Pitanje je samo kada će podići stvaranje prvog stupnja.

Korištenje zaključavanje() pružit će nam sigurno nit kako bi se izbjeglo izvršenje dvije niti u isto vrijeme stvoriti instancu.

Opet smo provjeru (singletonobject == null) tako da će jamčiti da samo jednom instanca će biti kreiran.

double check opcija će biti puna dokaz za naš razred.

Dopust jedan Odgovor

Možete koristiti te tags HTML

<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>