« Programmation Java/Processus légers et synchronisation » : différence entre les versions

Contenu supprimé Contenu ajouté
→‎Créer un processus léger : Pour que ça compile : catch InterruptedException
Ligne 135 :
<syntaxhighlight lang="java">
... code non protégé ...
synchronized(objet)
{
... code protégé ...
}
... code non protégé ...
Ligne 146 ⟶ 147 :
Le mot-clé <code>synchronized</code> peut également être utilisé dans la déclaration des méthodes :
<syntaxhighlight lang="java">
public synchronized void codeProtege()
{
... code protégé ...
}
</syntaxhighlight>
est équivalent à :
<syntaxhighlight lang="java">
public void codeProtege()
{
synchronized(this)
{
{
... code protégé ...
}
}
}
</syntaxhighlight>
Pour une méthode statique (méthode de classe) :
<syntaxhighlight lang="java">
public class MyClass
{
public synchronized static void codeProtege() {
{
... code protégé ...
}
}
}
</syntaxhighlight>
est équivalent à :
<syntaxhighlight lang="java">
public class MyClass
{
public static void codeProtege() {
{
synchronized(MyClass.class) {
... code protégé ...
{
}
... code protégé ...
}
}
}
}
</syntaxhighlight>
Ligne 197 ⟶ 205 :
synchronized(myobj)
{
myobj.wait();
}
</syntaxhighlight>