LINQ и вопрос параллелизма - PullRequest
1 голос
/ 09 июля 2010

Я занимаюсь разработкой трех приложений, которые используют общую базу данных.
Я сталкиваюсь с множеством различных проблем параллелизма, и мне было интересно, можно ли предотвратить выполнение каких-либо других запросов при выполнении определенных запросов (другими словами, блокировка базы данных, чтобы не было проблем параллелизма).

Редактировать: я использую LINQ to SQL

1 Ответ

2 голосов
/ 10 июля 2010

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

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

Использование блокировок БД для этого должно быть последним средством.

См .:
http://social.msdn.microsoft.com/forums/en-US/linqprojectgeneral/thread/2d6fdb2e-e17e-4a4c-8da0-6968e60ef855
... и ...
http://social.msdn.microsoft.com/Forums/en-US/linqtosql/thread/1b20c00d-bb53-4057-a336-79d962eb463f

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...