Articles of multithreading

Avoir un ensemble de tâches avec seulement X en cours d’exécution à la fois

Disons que j’ai 100 tâches qui font quelque chose qui prend 10 secondes. Maintenant, je veux seulement courir 10 à la fois, comme quand 1 de ces 10 finis, une autre tâche est exécutée jusqu’à ce que tout soit fini. Maintenant, j’ai toujours utilisé ThreadPool.QueueUserWorkItem() pour une telle tâche, mais j’ai lu qu’il est ThreadPool.QueueUserWorkItem() […]

BackgroundWorker RunWorkerCompleted, événement

Mon application C # a plusieurs antécédents. Parfois, un ouvrier de fond en tire un autre. Lorsque le premier agent d’arrière-plan est terminé et que l’événement RunWorkerCompleted est déclenché, sur quel thread cet événement est-il déclenché, l’interface utilisateur ou le premier agent d’arrière-plan à partir duquel RunWorkerAsync été appelé? J’utilise Microsoft Visual C # 2008 […]

L’interface utilisateur de l’application WinForm se bloque lors d’une opération de longue durée

J’ai une application Windows Forms sur laquelle j’ai besoin d’utiliser une boucle for ayant un grand nombre d’appels distants entre 2 000 et 3 000 appels, et lors de l’exécution de la boucle for, je perds mon contrôle sur les formulaires et les contrôles de formulaire, car il devient un processus volumineux et affiche parfois […]

Y a-t-il un moyen de mettre indéfiniment en pause un fil?

Pendant mon temps libre, je travaillais sur une application .NET d’parsing de sites Web. L’une des fonctionnalités de cette application que je voulais inclure était un bouton de pause permettant de mettre en pause un fil de discussion spécifique. Je suis relativement nouveau en multi-threading et je n’ai pas été en mesure de trouver un […]

Un thread C # peut-il réellement mettre en cache une valeur et ignorer les modifications apscopes à cette valeur sur d’autres threads?

Cette question ne concerne PAS les conditions de concurrence, l’atomicité ou la raison pour laquelle vous devez utiliser des verrous dans votre code. Je sais déjà à propos de ceux-ci. MISE À JOUR: Ma question n’est pas “existe-t-il une bizarrerie avec une mémoire volatile” (je sais que c’est le cas), ma question est “le résumé […]

Utiliser l’API Unity à partir d’un autre thread ou appeler une fonction dans le thread principal

Mon problème est que j’essaie d’utiliser Unity socket pour implémenter quelque chose. Chaque fois que je reçois un nouveau message, je dois le mettre à jour avec le fichier updattext (il s’agit d’un texte Unity). Cependant, lorsque je fais le code suivant, la mise à jour vide n’appelle pas à chaque fois. La raison pour […]