We face handling more than one operations at the same time in today’s world. We want to shorten the user’s waiting time even though it’s not always necessary. Displaying the loading for a long time or freezing the UI moves user’s focus away and decreases the app usage from time to time. At the same time, keeping the attention in the app became really hard. Therefore, instead of executing operations synchronously one after another, we have to run them in parallel to have a better user experience.