When should we use threading?

Despite the GIL limitation, threads can be really useful in some of the following cases:

Let's discuss the preceding cases in the next sections.