19. november 2001 - 14:04Der er
6 kommentarer og 1 løsning
Synchronized i statisk metode
Når jeg vil lave en synchronized blok inde i en metode plejer jeg at bruge flg.:
public void testMethod() { synchronized(this) { //Ting && sager, der skal være synchronized. } //ting && sager, der ikke skal være synchronized. }
Hvad gør jeg i det tilfælde hvor jeg har en statisk metode, hvori der skal være en blok synchronized kode? Her giver det jo ikke mening at skrive synchronized(this), idet this angiver det pågældende objekt. At bruge synchronized() giver en compilerfejl.
Hvis jeg lader hele metoden være statisk, kan det godt lade sig gøre, men dette er ikke optimalt. Er der nogen, der ved noget?
der er i din synchronized statement du skal have det
altså.
public static void testMethod() { synchronized(Klasse.class) { //Ting && sager, der skal være synchronized. } //ting && sager, der ikke skal være synchronized. }
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.