Junior — Middle
W jakim kontekście regionalnym jest związany wzorzec Singleton?
sobes.tech AI
Odpowiedź od AI
Wzorzec Singleton w Android często jest związany z kontekstem aplikacji (Application Context). Wynika to z faktu, że Singleton powinien mieć cykl życia odpowiadający cykli życia całej aplikacji, aby uniknąć wycieków pamięci i niewłaściwego użycia zasobów.
Użycie Application Context zapewnia, że Singleton nie będzie trzymał odwołania do Activity lub innego komponentu o krótszym cyklu życia, co może prowadzić do wycieków.
Przykład tworzenia Singletona z użyciem Application Context:
public class MySingleton {
private static MySingleton instance;
private Context context;
private MySingleton(Context context) {
// Używamy Application Context, aby zapobiec wyciekom
this.context = context.getApplicationContext();
}
public static synchronized MySingleton getInstance(Context context) {
if (instance == null) {
instance = new MySingleton(context);
}
return instance;
}
}