|
|
|
Границы применения timed locking для избежания Dead Lock
|
|||
|---|---|---|---|
|
#18+
Одно из решений по избежанию дедлоков, которое не всегда работает это timed locking в concurrency in practice по этому поводу написано: авторUsing timed lock acquisition to acquire multiple locks can be effective against deadlock even when timed locking is not used consistently throughout the program. If a lock acquisition times out, you can release the locks, back off and wait for a while, and try again, possibly clearing the deadlock condition and allowing the program to recover. ( This technique works only when the two locks are acquired together; if multiple locks are acquired due to the nesting of method calls, you cannot just release the outer lock, even if you know you hold it. ) Поясните пожалуйста эту фразу. Не понял её. P.S. про то, что можно захватывать ресурсы в одном порядке я в курсе. Если брать пример с обедающими философами, то это решение позволяет уменьшить вероятность дедлока попыткой 'что-то пошевелить', что может привести к livelock. Это считается применимым вариантом использования или нет? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.03.2017, 12:57 |
|
||
|
Границы применения timed locking для избежания Dead Lock
|
|||
|---|---|---|---|
|
#18+
questioner, Смысл фразы в том что в независимых локах ты можешь освободить любой, а во вложеных, либо внутренний, либо оба. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.03.2017, 13:39 |
|
||
|
Границы применения timed locking для избежания Dead Lock
|
|||
|---|---|---|---|
|
#18+
Blazkowicz, Когда локи являются зависимыми, а когда нет? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.03.2017, 14:01 |
|
||
|
Границы применения timed locking для избежания Dead Lock
|
|||
|---|---|---|---|
|
#18+
questioner, Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.03.2017, 14:35 |
|
||
|
Границы применения timed locking для избежания Dead Lock
|
|||
|---|---|---|---|
|
#18+
Blazkowiczquestioner, Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. согласен, что в этом случае нет смысла освобождать только outer ммм... а независимый это когда весь механизм локинга сосредоточен внутри одного класса? open-call в книжке? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.03.2017, 14:47 |
|
||
|
|

start [/forum/topic.php?fid=59&fpage=72&tid=2123089]: |
0ms |
get settings: |
7ms |
get forum list: |
13ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
46ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
38ms |
get tp. blocked users: |
1ms |
| others: | 216ms |
| total: | 338ms |

| 0 / 0 |
