Concurrency (computer science)In computer science, concurrency is the ability of different parts or units of a program, algorithm, or problem to be executed out-of-order or in partial order, without affecting the outcome. This allows for parallel execution of the concurrent units, which can significantly improve overall speed of the execution in multi-processor and multi-core systems. In more technical terms, concurrency refers to the decomposability of a program, algorithm, or problem into order-independent or partially-ordered components or units of computation.
Boucle infinieUne boucle infinie est, en programmation informatique, une boucle dont la condition de sortie n'a pas été définie ou ne peut pas être satisfaite. En conséquence, la boucle ne peut se terminer qu'à l'interruption du programme qui l'utilise. Il y a rarement un intérêt à programmer une boucle infinie. Une telle boucle ne permet pas de faire sortir un résultat, et accapare les ressources de l'ordinateur. Sur un système monotâche, une boucle infinie peut interdire à l'utilisateur toute autre action.
Thread (informatique)thumb|Un processus avec deux threads. Un thread ou fil (traduction normalisés par ISO/CEI 2382-7:2000 (autres appellations connues : processus léger, fil d'exécution, fil d'instruction, processus allégé, exétron, tâche, voire unité d'exécution ou unité de traitement) est similaire à un processus car tous deux représentent l'exécution d'un ensemble d'instructions du langage machine d'un processeur. Du point de vue de l'utilisateur, ces exécutions semblent se dérouler en parallèle.
DébogueurUn débogueur ou débugueur (de l'anglais debugger) est un logiciel qui aide un développeur à analyser les bugs d'un programme. Pour cela, il permet d'exécuter le programme pas-à-pas , d'afficher la valeur des variables à tout moment et de mettre en place des points d'arrêt sur des conditions ou sur des lignes du programme. Il s'agit de l'application à la programmation informatique du processus de troubleshooting. Le programme à déboguer est exécuté à travers le débogueur et s'exécute normalement.
DebuggingIn computer programming and software development, debugging is the process of finding and resolving bugs (defects or problems that prevent correct operation) within computer programs, software, or systems. Debugging tactics can involve interactive debugging, control flow analysis, unit testing, integration testing, , monitoring at the application or system level, memory dumps, and profiling. Many programming languages and software development tools also offer programs to aid in debugging, known as debuggers.
Self-synchronizing codeIn coding theory, especially in telecommunications, a self-synchronizing code is a uniquely decodable code in which the symbol stream formed by a portion of one code word, or by the overlapped portion of any two adjacent code words, is not a valid code word. Put another way, a set of strings (called "code words") over an alphabet is called a self-synchronizing code if for each string obtained by concatenating two code words, the substring starting at the second symbol and ending at the second-last symbol does not contain any code word as substring.
Commitment orderingCommitment ordering (CO) is a class of interoperable serializability techniques in concurrency control of databases, transaction processing, and related applications. It allows optimistic (non-blocking) implementations. With the proliferation of multi-core processors, CO has also been increasingly utilized in concurrent programming, transactional memory, and software transactional memory (STM) to achieve serializability optimistically. CO is also the name of the resulting transaction schedule (history) property, defined in 1988 with the name dynamic atomicity.
SerrureUne serrure est un mécanisme de fermeture (d’une porte, d’un véhicule) qui ne peut être ouvert que par une clef ou une combinaison correspondante. thumb|Coffre médiéval équipé d'une serrure à moraillon. L’invention de la serrure a suivi logiquement celle du verrou apparue lors de la sédentarisation au Néolithique. Les premières portes ont été sécurisées par l’invention du verrou, simple tige de bois (le pêne) poussée dans une ouverture dans le montant fixe (la gâche). Les Égyptiens inventèrent le verrou à loquet tombant apparu il y a .
Modèle d'acteurEn informatique, le modèle d'acteur est un modèle mathématique qui considère des acteurs comme les seules fonctions primitives nécessaires pour la programmation concurrente. Les acteurs communiquent par échange de messages. En réponse à un message, un acteur peut effectuer un traitement local, créer d'autres acteurs, ou envoyer d'autres messages. L'article de référence date de 1973. Ce modèle est utilisé aussi bien en informatique théorique pour formaliser les interactions concurrentes, qu’en pratique comme base de réalisation de langages de programmation ou d’architectures concurrentes.
Isolation (informatique)Dans les systèmes de gestion de base de données (SGBD), l'isolation est la capacité d'un système d'isoler les modifications dans une transaction en cours de celles faites dans les autres transactions conduites simultanément, jusqu'à ce qu'elle soit complétée. C'est l'une des quatre propriétés ACID d'une base de données. L'isolation des transactions d'une base données est assurée par son moteur de stockage, par un contrôle de concurrence entre elles.