narjes Mansoori
narjes Mansoori
خواندن ۱ دقیقه·۱۰ ماه پیش

آشنایی با مفهوم Flowable در RxJava

در واقع Flowable یک نوع داده‌ی جریانی (stream) در Reactive Streams است که در کتابخانه‌ی راکتیو RxJava وجود دارد. Flowable مشابه Observable است و داده‌ها را به صورت ناهمزمان(asynchronous) و به صورت یک جریان(stream) از رویدادها منتشر می‌کند.

در مقابل، Flowable از حالت سینگل (single) به جای تولید تک تک رویدادها، می‌تواند تعداد بی‌نهایتی رویداد را تولید کند و این امکان را دارد که فشار(backpressure) را در مقابل مشترکین اعمال کند. فشار به معنی کنترل و مدیریت سرعت انتقال داده‌ها است تا مشترکین قادر به پردازش و مصرف آنها باشند و از سربار بالایی جلوگیری شود.

در واقع Flowable به صورت یک سری عملگر قابل ترکیب است و می‌توان با استفاده از این عملگرها رویدادها را تبدیل، فیلتر، ترکیب و تغییر داد.

مثالی از استفاده از Flowable:

Flowable.range(1, 1000) // یک Flowable از اعداد 1 تا 1000 را تولید می‌کند .filter(number -> number % 2 == 0) // فقط اعداد زوج را انتخاب می‌کند .map(number -> &quotNumber: &quot + number) // اعداد را به رشته تبدیل می‌کند .subscribe(System.out::println); // رشته‌های نهایی را چاپ می‌کند

در این مثال، Flowable اعداد از 1 تا 1000 را تولید می‌کند و سپس با استفاده از عملگرهاfilter و map، اعداد زوج را انتخاب کرده و آنها را به رشته تبدیل می‌کند. در نهایت، با استفاده ازsubscribe، رشته‌های نهایی را چاپ می‌کند.

rxjavaتولید
Android Developer
شاید از این پست‌ها خوشتان بیاید