Re[9]: Software transactional memory
От: Cyberax Марс  
Дата: 16.01.07 13:32
Оценка:
palm mute wrote:
> C>Задача простая:
> C>1) Дан обычный линейный однонаправленый список.
> C>2) Необходимо придумать механизм транзакций, чтобы можно было поменять
> C>элемент из середины списка, не влияя на клиентов вне транзакции.
> C>3) Этот механизм не должен приводить к копированию списка.
> По моему скромному имху, "дан линейный однонаправленный список ..." —
> это не задача. Задача — это, например, перевести деньги со счета на счет.
Да без проблем. Куда грузовичком документацию по проекту подвозить?

Просто модельные примеры, где у одного объекта вычитается сумма, а к
другому добавляется — это просто детский лепет.

У меня была реальная задача версирования графа треугольников
(триангуляция большой карты высот) — я самую ее суть написал.

> Теперь по сути вопроса. Если дан список неизменяемых значений (целых

> чисел, например) — то задача некорректно поставлена, т.к. и без
> транзакций нельзя поменять элемент в середине списка, не скопировав
> элементы, ему предшествующие.
А ты представь, что объекты — изменяемые. Так как с иммутабельными
объектами — все просто.
Posted via RSDN NNTP Server 2.0
Sapienti sat!
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.