En informatique, la concurrence est une propriété des systèmes dans lesquels plusieurs calculs peuvent être effectués sur des périodes de temps qui se chevauchent. Les calculs peuvent être exécutés sur plusieurs cœurs dans la même puce, des threads partagés de manière préventive sur le même processeur, ou exécutés sur des processeurs physiquement séparés.

concurrency...

Je suis nouveau sur Golang et j'ai une tâche que j'ai implémentée en utilisant WaitGroup et Mutex que je voudrais convertir pour utiliser Channels à la place. Une très brève description de la tâche est la suivante: rejetez autant de routines go que nécessaire pour traiter un résultat et dans la rout....
15 mai 2020 à 17:18
J'ai le code suivant, c'est un code jouet mais permet de reproduire le problème: import java.util.*; import java.util.concurrent.ConcurrentHashMap; import java.util.concurrent.ExecutorService; import java.util.concurrent.Executors; import java.util.concurrent.TimeUnit; import java.util.stream.Collec....
Je lis ces derniers temps sur GCD et j'essaie de mettre en œuvre une série d'appels réseau à l'aide du DispatchGroup, mais je ne vois pas les résultats escomptés. Si ma compréhension est correcte chaque fois que nous utilisons wait sur le groupe de répartition, il devrait bloquer le thread jusqu'à c....
9 mai 2020 à 23:47
J'apprends la concurrence et je voulais implémenter un exemple simple qui prend des lignes d'une matrice et ajoute un tableau (tranche) de valeurs à chaque ligne. Puisque j'utilise des canaux, j'essaie d'attendre que chaque ligne obtienne son résultat correspondant de la goroutine. Cependant, ce n'e....
8 mai 2020 à 03:39
J'utilise un Thread (appelons-le "MapChecker") qui est en boucle pendant toute sa durée de vie sur un ConcurrentHashMap. La carte est remplie à partir d'autres threads et elle est effacée par MapChecker en utilisant des itérateurs dessus. La carte a la structure suivante: private volatile Map<MyObje....
Dans le livre "Concurrency in Action", il y a une implémentation de pile thread-safe où le mutex est acquis / verrouillé en entrant les fonctions pop () et empty () comme indiqué ci-dessous: class threadsafe_stack { private: std::stack<T> data; mutable std::mutex m; public: /....
4 mai 2020 à 10:59
J'ai un problème pour trouver une fuite de mémoire dans mon programme. Top signale une utilisation croissante de la mémoire pendant l'exécution du programme. Lors du profilage de mon programme avec valgrind, aucune fuite de mémoire n'est signalée. Le programme se compose d'un thread "lecteur" et de ....
22 avril 2020 à 19:36
J'ai un Task qui démarre un processus win, qui génère un fichier s'il n'est pas encore créé et le renvoie. Le problème est que l'action est appelée plus d'une fois. Pour être plus précisément son src attribut d'un élément <track>. J'ai ConcurrentDictionary<Guid, Task<string>> qui garde la trace de l....
J'utilise Flutter pour télécharger 3 ensembles différents de données à partir d'un serveur, puis faire quelque chose avec les 3 ensembles. Je pourrais faire ceci: List<Foo> foos = await downloader.getFoos(); List<Bar> bars = await downloader.getBars(); List<FooBars> foobars = await downloader.getFoo....
8 avril 2020 à 19:26
J'essaie de mieux comprendre la concurrence et l'utilisation des verrous, mais cet exemple factice que j'ai fait me dérange: int i = 0; void foo() { int n = i; i = i + 1; printf("foo: %d\n", n); } void boo() { int n = i; i = i + 1; printf("boo: %d\n", n); } int main(int ar....
Je travaille sur une application qui doit sérialiser des objets dans un fichier pour une utilisation ultérieure. Il existe plusieurs threads appelant la méthode writeObject (pour différents objets, même fichier) simultanément. La méthode est-elle thread-safe? Dois-je synchroniser l'opération d'écrit....
Comment le mutex C ++ est-il implémenté sous le capot? Utilise-t-il uniquement les algorithmes de Decker, Peterson ou autres pour appliquer l'exclusion mutuelle ou utilise-t-il également un support matériel tel que l'interruption de la comparaison et l'échange d'annonces (CAS). Est-il possible d'imp....
11 mars 2020 à 21:37
J'essayais d'implémenter un lecteur-écrivain en utilisant notifier et attendre. Mais je pense que je suis coincé. Ma séquence va comme ça. RRRRRRRRRRWWWWWWWWW Cela se produit si le démarrage principal avec le lecteur est appelé en premier. Ou WWWWWWWRRRRRRRRRRR. Cela se produit si le démarrage princ....
Débutant en python complet ... Je travaille avec le paquet Arduino pyfirmata et j'essaie de faire quelque chose de très simple. Selon une entrée utilisateur en python, je veux qu'une LED clignote ou non. Mon problème est que le programme python ne demande l'entrée utilisateur qu'une seule fois mais ....
Je lis le livre Core java de Cay S. Horstmann. Je suis confus avec ce code dans la section concurrence. Nous construisons un nouveau thread et lui passons notre tâche Runnable, je comprends jusqu'à présent. La partie qui me confond, c'est que nous appelons la méthode start() à ces nouveaux threads l....
22 févr. 2020 à 12:49
package singleton; public class SingletonClass { private static SingletonClass singleton = null; private SingletonClass() { } static boolean stopThread = true; //approach 1 which fails in multithereaded env /*public static SingletonClass getInstance(){ if(null ==....
7 févr. 2020 à 15:24
J'ai vu des questions similaires, mais j'ai encore quelques confusions. le code est ici: private volatile static DoubleCheckSingleton instance; private DoubleCheckSingleton() {} public static DoubleCheckSingleton getInstance(){ if(instance==null){ //first synchronized (DoubleCheckSin....
3 févr. 2020 à 21:32
Lorsque j'essaye d'exécuter ce code, le résultat est. {Yellow 99} {Yellow 10} Répliquez-le lien package main import ( "fmt" "sync" ) type Fruit struct { color string price int } func (f *Fruit) UpdatePrice(newPrice int) { f.price = newPrice } func main() { mango := Fruit{color: "Yel....
3 janv. 2020 à 21:23
Nous avons du mal à créer des documents en double en raison de conditions de concurrence. Nous traitons les événements et nous créons ou mettons à jour le document. Nous avons remarqué que nous créons des documents en double si nous obtenons deux événements en quelques millisecondes. Le premier évén....
2 janv. 2020 à 22:47
Dans Java Performance Tuning par Jack Shirazi il écrit: Cela signifie que l'accès et la mise à jour des variables sont automatiquement synchronisés (tant qu'ils ne sont pas longs ou doubles) . Si une méthode consiste uniquement en un accès ou une affectation variable, il n'est pas nécessaire de ....
Comment cela est censé fonctionner, une fois que la file d'attente a reçu 6 boîtes, elle procédera au conditionnement et au stockage dans une boîte, mais lorsque je veux afficher mon numéro de boîte, il affiche mon numéro de boîte de départ comme boîte 0 au lieu de la boîte 1 class Box { Can can....
23 déc. 2019 à 13:26
J'apprends la concurrence Java et j'ai utilisé un compte bancaire partagé entre plusieurs personnes par exemple pour essayer de pratiquer les principes de la concurrence. Ceci est ma classe de compte. public class Account(){ private int balance = 0; public int getBalance(){ return balance} ....
23 déc. 2019 à 12:47
Désolé pour la longue description. Si c'est trop long, dites-moi comment vous améliorer. J'apprends la concurrence Java. Ceci est un scénario que j'ai essayé de coder. Une mère et un enfant partagent un compte bancaire. La mère et l'enfant sont deux threads séparés et démarrés à partir du thread pri....
22 déc. 2019 à 10:27
Comment cela fonctionne est ma boîte entrera dans la ceinture et sera ensuite numérisée avec la classe de stérilisation, mais j'ai des problèmes en tant que tels que mes boîtes ne sont pas passées correctement, ce qui signifie que certaines de mes boîtes ne sont pas analysées, par exemple: une fois ....
21 déc. 2019 à 16:39
J'utilise Spring avec Redis et je travaille avec une liste dans un hachage. Tout fonctionne très bien sur un seul thread, des problèmes surviennent lorsque je dois mettre à jour la valeur de la liste avec plusieurs instances. Voici mon code pour mettre et obtenir de la valeur de Hash: public void pu....
20 déc. 2019 à 21:37