Przykład
public
static
void
main(
String
[] args) {
Object
lock =
new
Object();
for
(
int
i =
0
; i < args.length; i++ ) {
synchronized
( lock ) {
System.out.println( args[ i ] );
}
}
}
Rozwiązanie
Przenieś zsynchronizowane bloki poza pętlę.
public
static
void
main(
String
[] args) {
Object
lock =
new
Object();
synchronized
( lock ) {
for
(
int
i =
0
; i < args.length; i++ ) {
System.out.println( args[ i ] );
}
}
}