Карта сайта

Это автоматически сохраненная страница от 17.02.2013. Оригинал был здесь: http://2ch.hk/b/res/43571113.html
Сайт a2ch.ru не связан с авторами и содержимым страницы
жалоба / abuse: admin@a2ch.ru

Вск 17 Фев 2013 05:55:05
Transactional locking
Software transactional memory. Вопрос по TL2:
Объясните каким образом проходит жадная валидация значений транзакции? Ведь возможен сценарий (см. ниже) когда при read/write, на этапе сравнения, версии локов будут <= значения global clock-a и валидация пройдет хотя не должна. А если поставить < то возможен бесконечный ретрай транзакции.

Спасибо.

Сценарий: изначально x=4, y = 2
T1: read X
T2: write X, 8
T2: write Y, 4
T2: commit
T1: read Y
T2: //passed validation
T2: 1 / (x - y) //Divide by zero!

И тред T2 не выполняет rollback. Потому что механизм rollback-a включается только если провалена валидация.



← К списку тредов