Maison  >  Article  >  Java  >  Qu'est-ce que la concurrence en Java ?

Qu'est-ce que la concurrence en Java ?

青灯夜游
青灯夜游original
2019-11-18 17:27:035648parcourir

Qu'est-ce que la concurrence en Java ?

Qu'est-ce que la concurrence en Java ?

Concurrency : fait référence à l'exécution alternée de plusieurs tâches dans un certain laps de temps. Lorsque plusieurs threads fonctionnent, le temps d'exécution du processeur est divisé en plusieurs périodes, puis les périodes sont allouées à chaque thread pour l'exécution. Pendant que le code d'un thread est en cours d'exécution, les autres threads sont suspendus.

Pour faire simple, le CPU effectue plusieurs tâches en même temps.

La concurrence Java est implémentée par multi-threading. [Apprentissage recommandé : cours java]

Dans le monde de jvm, les threads sont comme des espaces parallèles sans rapport, sérialisés dans la machine virtuelle. (Bien sûr, il s'agit d'une déclaration plus générale. Les threads peuvent interagir les uns avec les autres, et ils ne sont pas nécessairement en série.)

L'existence du multi-threading consiste à compresser le processeur, à améliorer les performances du programme et à réduire certaines exigences de conception. Complexité (conception de programmes avec une réflexion temporelle réaliste).

Pourquoi utiliser le multi-threading ?

Tout d'abord :

Du bas de l'ordinateur : les threads peuvent être comparés à des processus légers, qui sont la plus petite unité d'exécution de programme, de commutation et de planification entre les threads. Le coût est bien moindre que le processus. De plus, l'ère des processeurs multicœurs signifie que plusieurs threads peuvent s'exécuter simultanément, ce qui réduit la surcharge liée au changement de contexte de thread.

Du point de vue des tendances contemporaines du développement d'Internet : les systèmes actuels nécessitent souvent des millions, voire des dizaines de millions de concurrence, et la programmation simultanée multithread est la base du développement de systèmes à haute concurrence. -les mécanismes de threading peuvent grandement améliorer la concurrence et les performances du système.

Approfondissez la couche inférieure de l'ordinateur :

L'ère du monocœur : à l'ère du monocœur, le multithreading visait principalement à améliorer l'utilisation complète du processeur et des périphériques d'E/S.

L'ère multicœur : L'ère multicœur vise principalement à améliorer l'utilisation du processeur.

Quels problèmes peuvent survenir lors de l'utilisation du multi-threading ?

Le but de la programmation simultanée est d'améliorer l'efficacité d'exécution du programme et d'augmenter la vitesse d'exécution du programme. Cependant, la programmation simultanée n'améliore pas toujours la vitesse d'exécution du programme, et la programmation simultanée. peut rencontrer de nombreux problèmes, par exemple : fuites de mémoire, changement de contexte, blocages, etc., ainsi que des problèmes limités par le matériel, les logiciels et les ressources inutilisées.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn