Sobes.tech
Junior — Middle

Que se passe-t-il avec les threads lors de l'utilisation de la fonction sync et quel thread est bloqué dans le processus?

sobes.tech IA

Réponse de l'IA

La fonction sync dans le contexte de la multitâche (par exemple, dans GCD sur iOS) exécute la tâche de manière synchrone, c'est-à-dire que le thread appelant est bloqué jusqu'à ce que la tâche se termine. Si vous appelez sync depuis le thread principal sur une file qui s'exécute également sur le thread principal, cela entraînera un blocage, car le thread principal attendra la fin de la tâche, qui ne peut pas commencer tant que le thread principal n'est pas libéré.

Ainsi, lors de l'utilisation de sync, le thread appelant est bloqué, et l'exécution du code est suspendue jusqu'à ce que la tâche soit terminée.