pour appeler toto.wait()
tu dois avoir un synchronized sur toto
pour faire un wait() sur un autre objet,
il faudra faire un synchronized sur cet object
ca c est pour la syntaxe du langage.
maintenant, concernat la fonctionalite recherchee,
tu fais un wait() sur le mutex parceque tu attends
d etre receille par un appel a notify() fait par une autre thread sur le MEME mutex.
pour info la librairie concurent (il y a une JSR sur ce sujet)
est tres interessante pour ce genre de pb
rod
>>-----Original Message-----
>>From: Eric LEMAITRE [mailto:[EMAIL PROTECTED]]
>>Sent: Thursday, June 27, 2002 1:45 PM
>>To: Liste Java
>>Subject: Trop fin pour moi
>>
>>
>>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
>>
>>