Salut la liste !

J'ai un probl�me moral existentiel, du genre o� il vaut mieux avoir fait 
philo qu'informatique pour comprendre ce qui se passe (j'exag�re, enfin 
j'esp�re).
Dans la s�rie des tr�s grands classiques pour impl�menter verrouillage, 
soit le bout de code suivant (simple exemple, c'est pas un vrai) :

class RWLock
{
Object mutex = new Object();    // Exclusion mutuelle qui verrouille 
l'acc�s � la ressource critique
.....
    // On demande le verrou sur la ressource, le programme appelant 
reste bloqu� tant qu'on ne l'a pas
    public void getLock()
    {
        // Bloc de code synchronis� sur le mutex, pour l'instant j'ai bon
        synchronized(mutex)
        {
                while (ressource_pas_disponible)
                {
                    mutex.wait();    // J'attends (le Thread en cours, 
�videmment)
etc.................................

Et c'est donc l� qu'est mon probl�me existentiel, la nuance qui 
m'�chappe : Je fais "mutex.wait()" pour attendre, mais est ce qu'on 
pourrait faire "wait()" tout court sur l'instance de Thread courante, 
est ce que �a reviendrait au m�me ? Je sens intuitivement que non, mais 
je n'arrive pas � me d�montrer pourquoi.
Vivement la partie 3 de l'article "Achieve strong performance with 
Threads" sur JavaWorld le mois prochain, cette explication sera 
probablement dedans.

TIA, @ ++ !

-- 
Supprimez "NOSPAM" de mon adresse pour me r�pondre, SVP
Please get rid of "NOSPAM" from my adress so as to answer me

Eric LEMAITRE
CNAM Computer Engineer, MS/CS
Certified Java Programmer, Cisco Network & Design Associate, Linux RedHat Engineer & 
Trainer
Java : SCJP2 (#H3CPAR00B0)
Cisco : CCNA (#CSCO10300611), CCDA (#CSCO10437862)
Linux RedHat : RHCE (#806099741300292), RHCX


Répondre à