Dans cet exemple, il s'agit de permettre à l'utilisateur de rajouter des tâches dans une file, et parallèlement d'assurer l'exécution de ces tâches les unes après les autres, chacune devant s'exécuter de manière asynchrone, car le moment où leur exécution se termine ne peut être connu à l'avance et ne doit pas bloquer l'exécution du programme principal.