В статье на MSDN было показана реализации транзакции на уровне объектов памяти. Я вкратце изложу основные моменты.Постановка:Нам нужно выполнять некую операцию, а точнее набор операций, как единое целое. Это включает в себя как обращение к БД, так и обращение к ресурсам (объектам) в памяти. Схема работы следующая:
Объекты находятся в состоянии A, при старте транзакции они переходят во временное состояние. В этот момент нежелателен доступ к ним из других потоков (транзакций), но это зависит уже от конкретной операции. После успешного завершения транзакции (коммита) объекты переходят в конечное состояние B. Если транзакций не удалась - возвращаемся в состояние А. Read more: DevLanfear - .NET разработка
Объекты находятся в состоянии A, при старте транзакции они переходят во временное состояние. В этот момент нежелателен доступ к ним из других потоков (транзакций), но это зависит уже от конкретной операции. После успешного завершения транзакции (коммита) объекты переходят в конечное состояние B. Если транзакций не удалась - возвращаемся в состояние А. Read more: DevLanfear - .NET разработка