Есть ли безопасный способ использовать ReaderWriterLockSlim в ASP.NET?
Статья Джо Даффи о ReaderWriterLockSlim не вселяет в меня уверенность!
Представляем новый ReaderWriterLockSlim в Orcas
Блокировка не устойчива к асинхронным исключениям, таким как прерывание потока и нехватка памяти. Если один из них происходит во время выполнения одного из методов блокировки, состояние блокировки может быть повреждено, вызывая последующие взаимные блокировки, необработанные исключения и (к сожалению) из-за использования спин-блокировок внутри, привязанный 100% -ый ЦП.
Как я могу безопасно использовать ReaderWriterLockSlim в ASP.NET?
1 ответ
Ваше приложение ASP.NET регулярно сталкивается с прерываниями потока (из других потоков) или пытается выжить OutOfMemoryException
s? Если нет, я не могу видеть, что сообщение слишком беспокоит... и если это так, я бы сказал, что у вас есть большие проблемы.
В частности, обратите внимание на этот бит:
Однако у новой блокировки есть некоторые недостатки, которые могут заставить программистов писать размещенный или низкоуровневый код, чувствительный к надежности, ждать его принятия. Не поймите меня неправильно, большинству людей действительно не нужно беспокоиться об этих темах, поэтому я прошу прощения, если мои предупреждающие слова вас отпугнули: но те, которые действительно нужно рассказать о положении дел.
Да, ASP.NET "размещен", но он не такой серьезный, как хостинг SQL Server CLR. Я не думаю, что вам нужно беспокоиться.