Код: Выделить всё
long amount = …
//two bank accounts
final BankAccount ba1 = ...
final BankAccount ba2 = ...
synchronized(ba1, ba2){
ba1.transfer(amount , ba2);
}
Код: Выделить всё
//two bank accounts
final BankAccount ba1 = ...
final BankAccount ba2 = ...
//synchronize bank accounts
final LockManager lockManager = …
synchronizer.synchronize( ba1, LockMode.Write,
ba2, LockMode.Write,
new Transaction(){
@Override
public void execute() {
...
ba1.transfer(amount , ba2);
}
} );
Подробнее здесь: https://stackoverflow.com/questions/207 ... ea-and-api
Мобильная версия