示例
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 ] );
}
}
}
解决方案
将 synchronized 块移到循环外部。
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 ] );
}
}
}