, что происходит с неуправляемыми ресурсами, такими как DB соединения, открытыми файлы, ... когда приложение .net (не веб-приложение) врежется.net, состояние неуправляемых ресурсов
ответ
Это зависит от ресурса и как конечная точка для этого ресурса имеет дело с этим. Для соединений с базой данных сервер базы данных будет прослушивать и ждать каких-либо сообщений, сколько бы он ни был настроен для ожидания (вероятно, не очень долгого), а затем прекратить сокет. Файлы могут потенциально застревать в заблокированном («используется другим процессом») состоянии, но IME это крайне редко.
То же самое, что происходит при сбое приложения native (C/C++/etc).
По большей части операционная система немедленно очистится. Он закроет файловые дескрипторы, мьютексы, сетевые подключения и любые другие вещи, за которые отвечает ОС.
Для других ресурсов, не предоставленных ОС (например, подключение к SQL-серверу), зависит от того, какая часть программного обеспечения отвечает за этот ресурс. Как упоминает Rex M, SQL-сервер будет сидеть там до тех пор, пока время соединения не закончится, а затем оно будет выпущено, но другое стороннее программное обеспечение может действовать по-другому.
Это может вызвать проблемы, если вы получаете некоторый неуправляемый ресурс от дерьмовой части стороннего программного обеспечения, поскольку он может быть недостаточно умен, чтобы использовать таймауты или аналогичный механизм, а неуправляемый ресурс может просто никогда не появляться ,
Это может также вызвать проблемы, если ваше стороннее программное обеспечение имеет длительные таймауты. Например, если тайм-аут соединения сервера SQL составляет 20 минут, и вы крадете 20 раз за 2 минуты, тогда у вас есть 20 «использованных» соединений, которые сидят там до тех пор, пока не произойдет тайм-аут. Вы можете запускать себя из связей, делая такие вещи.
- 1. Освобождение неуправляемых ресурсов
- 2. Устранение неуправляемых ресурсов в форме
- 3. Утилизация неуправляемых ресурсов в потоке
- 4. asp.net лучший способ очистки неуправляемых ресурсов
- 5. Закрытие неуправляемых ресурсов при закрытии приложения WPF
- 6. Примеры упреждающих и неуправляемых ресурсов в ОС
- 7. Утилизация неуправляемых ресурсов, созданных в Windows Form
- 8. Как правильно распоряжаться сбором неуправляемых ресурсов из финализатора?
- 9. Очистка неуправляемых ресурсов из сеанса, например, Crystal Report Document
- 10. Смешивание управляемых/неуправляемых C++?
- 11. Утилизация ресурсов в .NET
- 12. Вопросы оптимизации ресурсов .net
- 13. .NET Timer - Очистка ресурсов
- 14. ресурсов в VB2005.net?
- 15. Строки ресурсов в .net
- 16. .net Прослушать состояние принтера
- 17. .NET 3.5 Состояние просмотра
- 18. Сопоставление неуправляемых данных с управляемой структурой в .NET.
- 19. Обратный процесс инъекционного .Net сборок в неуправляемых процессов
- 20. Неверная привязка файлов ресурсов .NET
- 21. .Net Одновременное программирование книг/ресурсов?
- 22. «Интерфейс» для .Net файлов ресурсов
- 23. Выборочный компиляция ресурсов в .NET?
- 24. .NET загрузка файла некорректных ресурсов
- 25. Редактирование ресурсов .NET с отражением?
- 26. emberjs | сохранить состояние маршрутов и вложенных ресурсов
- 27. GC.AddMemoryPressure для неуправляемых объектов
- 28. отображение RestKit неуправляемых объектов
- 29. Maven: Поиск неуправляемых зависимостей
- 30. django Получение неуправляемых товаров