Sobes.tech
Junior — Middle

RxJava'da Single operatorining vazifasi nima va qaysi holatlarda foydalaniladi?

sobes.tech AI

AIdan javob

RxJava'da Single operatörü, tam olaraq bir element veya hata yayınlayan bir akışı temsil edir. Normal Observable'dan fərqli olaraq, çox element yayımlaya bilən Observable'dan fərqli olaraq, Single tək bir nəticə və ya hata təmin edir.

Məqsəd:

  • Şəbəkə sorğusu, verilənlər bazası oxuma və ya hesablamalar kimi tək bir dəyər qaytaran asinxron əməliyyatlar üçün istifadə olunur.

İstifadə ssenariləri:

  • Serverdən məlumat alma (məsələn, istifadəçi profilini yükləmək).
  • Yalnız bir nəticə gözlənilən əməliyyatları yerinə yetirmək (məsələn, məlumatları təsdiqlə ilə saxlamaq).

Single istifadəsinə nümunə:

Single<String> single = Single.create(emitter -> {
    // Asinxron əməliyyat
    String result = fetchDataFromNetwork();
    if (result != null) {
        emitter.onSuccess(result);
    } else {
        emitter.onError(new Exception("Yükləmə xətası"));
    }
});

single.subscribe(
    data -> System.out.println("Alındı: " + data),
    error -> System.err.println("Xəta: " + error.getMessage())
);