Middle+
SharedFlow nədir və o, StateFlow-dan necə fərqlənir?
sobes.tech Süni İntellekt
AI-dan cavab
SharedFlow — bu korutinalardan gələn və çoxsaylı abunələrə dəyərlər göndərən axındır ("isti" axın).
StateFlow — SharedFlow-un varyantıdır və vəziyyət axını təmsil edir. Həmişə başlanğıc dəyəri var və ən son məlum olan dəyəri yeni abunələrə göndərir.
Əsas fərqlər:
| Xüsusiyyət | SharedFlow | StateFlow |
|---|---|---|
| Başlanğıc dəyəri | Varsayılan olaraq yoxdur, replay təyin edilə bilər |
Həmişə məcburi başlanğıc dəyəri var |
| Yeni abunələr üçün dəyərlərin təkrarı | replay parametri ilə idarə olunur |
Həmişə son dəyəri təkrarlayır |
| Buffer ölçüsü | Buffer ölçüsü extraBufferCapacity ilə təyin edilir |
Buffer ölçüsü 0-dır (sonuncu dəyər istisna olmaqla) |
| Eyni dəyərlərin yayımı | Bütün dəyərləri yayır, hətta eyni olsa belə | Ardıcıl eyni dəyərləri yaymır (.equals() ilə bərabərdirsə) |
| İstifadə halı | Hadisələr, məlumat axınları | UI vəziyyətləri və ya digər hazırki vəziyyətlər |