Вопросы с тегом 'idisposable'

IDisposable - это интерфейс в библиотеке базового класса Microsoft.NET Framework (BCL). Он предназначен для предоставления универсального детерминированного метода освобождения неуправляемых ресурсов в коде приложения .NET.
19

Правильное использование интерфейса IDisposable

Из документации Microsoft я знаю, что "основное" использование интерфейса IDisposable - очистка неуправляемых ресурсов. Для меня "неуправляемый" означает такие вещи, как соединения с базой данных, сокеты, дескрипторы окон и т.д. Но я видел код, в к...
11 февр. '09 в 18:12
13

Завершить/удалить шаблон в С#

С# 2008 Я работаю над этим некоторое время, и я все еще смущен некоторыми проблемами. Мои вопросы ниже Я знаю, что вам нужен только финализатор, если вы распоряжаетесь неуправляемыми ресурсами. Однако, если вы используете управляемые ресурсы, кото...
22 мая '09 в 16:44
12

Нужно ли удалять HttpClient и HttpClientHandler?

System.Net.Http.HttpClient и System.Net.Http.HttpClientHandler в.NET Framework 4.5 реализуют IDisposable (через System.Net.Http.HttpMessageInvoker). В документации, using заявлении, говорится: Как правило, когда вы используете объект IDisposable,...
29 мар. '13 в 14:17
4

Когда следует использовать GC.SuppressFinalize()?

В .NET, при каких обстоятельствах я должен использовать GC.SuppressFinalize()? Какое преимущество использует этот метод?
29 сент. '08 в 22:41
10

Должен ли я Dispose() DataSet и DataTable?

DataSet и DataTable реализуют IDisposable, поэтому, с помощью обычных передовых методов, я должен называть их методы Dispose(). Однако из того, что я читал до сих пор, DataSet и DataTable фактически не имеют неуправляемых ресурсов, поэтому Dispose()...
26 мая '09 в 23:08
7

возвращение в середине используемого блока

Что-то вроде: using (IDisposable disposable = GetSomeDisposable()) { //..... //...... return Stg(); } Я считаю, что это неправильное место для оператора return, не так ли?
19 мар. '09 в 15:53
8

Как вы предотвращаете распространение IDisposable на все ваши классы?

Начните с этих простых классов... Скажем, у меня есть простой набор таких классов: class Bus { Driver busDriver = new Driver(); } class Driver { Shoe[] shoes = { new Shoe(), new Shoe() }; } class Shoe { Shoelace lace = new Shoelace()...
19 мар. '09 в 11:13
5

Использование оператора с нулевым объектом

Можно ли использовать оператор using для (потенциально) нулевого объекта? Рассмотрим следующий пример: class Test { IDisposable GetObject(string name) { // returns null if not found } void DoSomething() { using (IDispos...
26 мар. '10 в 11:22
9

Будет ли сборщик мусора звонить IDisposable.Dispose для меня?

.NET IDisposable Pattern подразумевает, что если вы напишите финализатор и реализуете IDisposable, то ваш финализатор должен явно вызвать Dispose. Это логично, и это то, что я всегда делал в редких ситуациях, когда гарантируется финализатор. Однако,...
05 сент. '08 в 0:25
4

Должен ли я вызвать Close() или Dispose() для объектов потока?

Классы, такие как Stream, StreamReader, StreamWriter и т.д. реализуют интерфейс IDisposable. Это означает, что мы можем вызвать метод Dispose() на объектах этих классов. Они также определили метод public, называемый Close(). Теперь, что меня смущает...
23 сент. '11 в 6:05
5

Что произойдет, если я вернусь до конца использования инструкции? Будет ли вызов вызываться?

У меня есть следующий код using(MemoryStream ms = new MemoryStream()) { //code return 0; } Метод dispose() вызывается в конце using оператора braces } справа? Так как я return до конца оператора using, будет ли объект MemoryStream удале...
14 июл. '10 в 15:15
2

ASP MVC: Когда вызывается IController Dispose()?

Я перехожу к большому рефакторингу/настройке скорости одного из моих более крупных приложений MVC. Он был развернут на производство в течение нескольких месяцев, и я начал получать тайм-ауты, ожидая подключения в пуле соединений. Я отследил проблему ...
04 сент. '09 в 15:41
7

Как определить, находится ли ссылка на объект IDisposable?

Есть ли способ или какой-либо другой легкий способ проверить, ссылается ли ссылка на расположенный объект? P.S. - Это просто любопытство (хорошо спите, а не в производственном коде). Да, я знаю, что могу поймать ObjectDisposedException при попытке ...
10 окт. '08 в 16:44
15

Должен ли "Dispose" использоваться только для типов, содержащих неуправляемые ресурсы?

Недавно я обсуждал с коллегой о значении Dispose и типах, которые реализуют IDisposable. Я думаю, что существует значение при реализации IDisposable для типов, которые должны очищаться как можно скорее, , даже если нет неуправляемых ресурсов для о...
25 апр. '12 в 13:12
5

Entity Framework и вызов context.dispose()

Когда следует вызывать DbContext.dispose() со структурой сущностей? Этот мнимый метод плох? public static string GetName(string userId) { var context = new DomainDbContext(); var userName = context.UserNameItems.FirstOrDefault(x => x.Us...
27 мар. '13 в 18:38