Java : Exemple de consommateur de producteur - Gérer la lecture/écriture simultanée

Publié: 2019-02-17

Exemple Producteur Consommateur - Gérer la lecture simultanée : écriture

Le producer-consumer problem (également connu sous le nom bounded-buffer problem ) est un exemple Java classique d'un problème de synchronisation multi-processus.

Le problème décrit deux processus, the producer et the consumer , qui partagent un tampon commun de taille fixe utilisé comme file d'attente. Le travail du producteur est de générer une donnée, de la mettre dans la mémoire tampon et de recommencer.

Dans le même temps, le consommateur consomme les données (c'est-à-dire les supprime de la mémoire tampon) une pièce à la fois. Le problème est de s'assurer que le producteur n'essaiera pas d'ajouter des données dans le tampon s'il est plein et que le consommateur n'essaiera pas de supprimer des données d'un tampon vide.

Le programme Java ci-dessous créera ce problème :

Exemples Java - Problème producteur-consommateur

Publier:

Résolution:

Ajoutez le mot clé synchronized pour verrouiller les data pendant que nous les utilisons.

Meilleur programme Java :

Résultat de l'exemple de consommateur de producteur Java :

java-producteur-consommateur-tutoriel-crunchify