DictionaryForumContacts

 Speleo

link 30.10.2012 18:46 
Subject: Symmetric lock deadlock progr.
Добрый день!

Помогите, пожалуйста, с корректным переводом выражения "symmetric lock deadlock". Выражение встречается в контексте параллелизма Java. Пока что переведено как "взаимоблокировка симметричной блокировки", но уверенности в корректности перевода нет.

Контекст следующий:

The symmetric lock deadlock scenario is somewhat well-known because it happened in a release of Java 1.4., where some of the synchronized containers returned by the Collections.synchronized methods deadlocked. Not only containers are susceptible to symmetric lock deadlock, however. All you need is a class with a method that takes another instance of the same class as its argument, that also needs to perform an operation atomically on members of the two instances.

Сценарий (взаимоблокировки симметричной блокировки?) является достаточно хорошо известным, поскольку он возник в выпуске Java 1.4, где некоторые из синхронизированных контейнеров, возвращаемых методами Collections.synchronized, взаимно блокировались. Однако не только контейнеры уязвимы для взаимоблокировки симметричной блокировки. Все, что вам нужно, – это некоторый класс с методом, который принимает другой экземпляр того же класса в качестве своего аргумента, что также требует атомарности выполнения операций над членами двух экземпляров.

И:

You can prevent the symmetric lock deadlock by determining an order among instances, so that when locks of two instances need to be taken together, the order is computed dynamically and determines which lock to take first.

Взаимоблокировку симметричной блокировки можно предотвратить путем определения порядка среди экземпляров, так что когда блокировки двух экземпляров должны быть приняты вместе, порядок вычисляется динамически и определяет, какая блокировка должна быть принята первой.

Всем спасибо!

 overdoze

link 30.10.2012 19:45 
по смыслу
"взаимоблокировка, вызванная симметричными захватами ресурсов"

речь о том, что
процесс 1 захватывает ресурс А, затем Б
процесс 2 захватывает ресурс Б, затем А
при параллельном выполнении такие процессы могут заблокировать друг друга
если же они "договорятся" захватывать А и Б в какой-либо заранее устойчивой последовательности, то взаимоблокировки никогда не будет

 Speleo

link 30.10.2012 19:51 
overdoze, хороший вариант, спасибо!

 

You need to be logged in to post in the forum