Redux Saga zvláda viacero súbežných úloh efektívnejšie ako Redux Thunk niekoľkými spôsobmi:
1. Kontrola súbežnosti: Redux Saga poskytuje vstavanú kontrolu súbežnosti pomocou funkcií `takeEvery` a `takeLatest`. Tieto funkcie vám umožňujú spravovať viacero súbežných úloh zadaním spôsobu, akým sa majú spracovať. Napríklad `takeEvery` zabezpečuje, že každá úloha sa vykoná postupne, zatiaľ čo `takeLatest` zabezpečuje, že sa vykoná len posledná úloha[1][2][4].
2. Zrušenie úloh: Redux Saga vám umožňuje zrušiť úlohy, ktoré už nie sú potrebné. Je to užitočné najmä pri riešení dlhotrvajúcich úloh alebo úloh, ktoré už nie sú relevantné. Ságy je možné zrušiť pomocou funkcie „zrušiť“, ktorá zastaví vykonávanie ságy a uvoľní všetky zdroje, ktoré používala[1][2][4].
3. Ošetrenie chýb: Redux Saga poskytuje lepšie spracovanie chýb ako Redux Thunk. Sagas dokáže zachytiť a zvládnuť chyby pomocou funkcie `catch`, ktorá vám umožňuje zadať spätné volanie na spracovanie chyby. To uľahčuje správu chýb a zabraňuje ich šíreniu v zásobníku hovorov[1][2][4].
4. Testovanie: Redux Saga sa testuje ľahšie ako Redux Thunk vďaka svojej čisto funkčnej povahe. Ságy možno testovať pomocou jednotkových testov, čo uľahčuje overenie ich správneho fungovania[1][2][4].
5. Výkon: Redux Saga je vo všeobecnosti efektívnejší ako Redux Thunk, pretože využíva funkcie generátora, ktoré sú ľahšie a efektívnejšie, než sa sľubuje. Vďaka tomu sa lepšie hodí na spracovanie zložitých asynchrónnych scenárov a rozsiahlych aplikácií[1][2][4].
Stručne povedané, Redux Saga zvláda viacero súbežných úloh efektívnejšie ako Redux Thunk tým, že poskytuje kontrolu súbežnosti, zrušenie úloh, lepšie spracovanie chýb, jednoduchšie testovanie a lepší výkon.
Citácie:[1] https://www.dhiwise.com/post/redux-thunk-vs-redux-saga-choosing-the-right-middleware
[2] https://www.geeksforgeeks.org/redux-thunk-vs-redux-saga-choosing-the-right-middleware/
[3] https://www.mindbowser.com/redux-saga-vs-redux-thunk/
[4] https://www.geeksforgeeks.org/how-does-redux-saga-differ-from-redux-thunk/
[5] https://stackoverflow.com/questions/50285972/what-is-the-difference-between-redux-thunk-and-redux-saga