Quelle est la différence entre une coroutine et un fil ?
Quelle est la différence entre une coroutine et un fil ?

Vidéo: Quelle est la différence entre une coroutine et un fil ?

Vidéo: Quelle est la différence entre une coroutine et un fil ?
Vidéo: Que sont les coroutines sous Kotlin - Vidéo Tuto 2024, Novembre
Anonim

Un important différence entre les fils et coroutines est-ce fils sont généralement programmés de manière préventive pendant que coroutines ne sont pas. Parce que fils peuvent être reprogrammés à tout instant et peuvent s'exécuter simultanément, les programmes utilisant fils il faut faire attention au verrouillage.

De cette façon, quelles sont les coroutines s'exécute-t-il sur un fil différent ?

Coroutines n'a rien à faire avec Fils . Coroutine méthodes pouvez être exécuté pièce par pièce au fil du temps, mais tous les processus sont toujours effectués par un seul Fil . Si vous avez plus d'un processeur logique, beaucoup de fils sont exécutés le différent CPU.

De plus, qu'est-ce qu'un thread dans la programmation ? UNE fil en informatique est l'abréviation d'un fil d'exécution. Fils sont un moyen pour un programme se diviser (appelé « divisé ») en deux ou plusieurs tâches exécutées simultanément (ou pseudo-simultanément).

A savoir aussi, qu'est-ce que Coroutine s'exécute-t-il sur un nouveau fil?

Que se passe-t-il avec un coroutine c'est que c'est Cours sur le principal fil chaque trame et s'exécute jusqu'à ce qu'il fasse un rendement - puis il sera suspendu jusqu'à ce que la condition de rendement soit remplie. UNE fil effectivement s'exécute en même temps que d'autres codes (cela n'est vrai que lorsque vous avez plusieurs cœurs).

Quand dois-je utiliser runBlocking ?

En fait tu utiliser runBlocking pour appeler des fonctions de suspension dans du code "bloquant" qui, autrement, ne serait pas appelable là-bas ou en d'autres termes: vous utilisation pour appeler des fonctions de suspension en dehors du contexte de la coroutine (dans votre exemple, le bloc passé à async est la fonction de suspension).

Conseillé: