LockManager — идея и APIJAVA

Программисты JAVA общаются здесь
Ответить
Anonymous
 LockManager — идея и API

Сообщение Anonymous »

Я хочу разработать LockManager, который может блокировать множество переменных и избегать взаимоблокировок. Например, следующий фрагмент кода:

Код: Выделить всё

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);
}

} );
Мне нужно ваше мнение об идее и предлагаемом API.

Подробнее здесь: https://stackoverflow.com/questions/207 ... ea-and-api
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «JAVA»