Страница: 1 |
Страница: 1 |
Вопрос: Проблема с 'components.Dispose'
Добавлено: 18.03.09 13:22
Автор вопроса: Vugar Miriyev | Web-сайт:
Почему-то при вызове components.Dispose программа уходит в даун на несколько минут и как можно отследить в чем проблема?
Ответы
Всего ответов: 9
Номер ответа: 1
Автор ответа:
EROS
Вопросов: 58
Ответов: 4255
Профиль | | #1
Добавлено: 18.03.09 15:20
А что ты пытаешься сделать вызовом этой команды? За уничтожение объектов, обычно, отвечает "сборщик мусора" и вызова этой команды как правило не требуется за редким исключением..
Номер ответа: 2
Автор ответа:
Vugar Miriyev
ICQ: 321950466
Вопросов: 24
Ответов: 28
Web-сайт:
Профиль | | #2
Добавлено: 18.03.09 15:24
Это стандартно сгенерированный VS код.
protected override void Dispose(bool disposing)
{
try
{
base.Dispose(disposing);
if (disposing && (components != null))
{
components.Dispose();
}
}
catch
{
}
}
Форма содержит несколько Datagridview с большим количеством записей (200-300 тыс). При попытке закрыть форму как я уже писал засыпает напрочь. Лечиться только так
//components.Dispose();
но я не уверен что это правильно.
Номер ответа: 3
Автор ответа:
EROS
Вопросов: 58
Ответов: 4255
Профиль | | #3
Добавлено: 18.03.09 15:51
но я не уверен что это правильно.
согласен.. это совсем не правильно.. Возможно это при удалении такого огромного количества записей? Потому как этот код отвечает за освобождение ресурсов.. но что то верится с трудом.. при таком количестве по идее даже сама форма должна подтормаживать..
Номер ответа: 4
Автор ответа:
Vugar Miriyev
ICQ: 321950466
Вопросов: 24
Ответов: 28
Web-сайт:
Профиль | | #4
Добавлено: 18.03.09 15:55
Странно то что освобождение bindingsource у datagridview перед закрытием не дает никакого эффекта. Есть соображения?
Номер ответа: 5
Автор ответа:
EROS
Вопросов: 58
Ответов: 4255
Профиль | | #5
Добавлено: 18.03.09 16:03
Есть соображения?
даже затрудняюсь что либо подсказать.. нестандартная ситуёвина. Попробуй убить все источники данных для этих таблиц. DataSet,DataTable,DataReader и т.д.. Если и это не поможет, то попробуй вообще гриды не заполнять, чтоб убедиться что проблема на самом деле в гридах а не в чем то другом..
Номер ответа: 6
Автор ответа:
EROS
Вопросов: 58
Ответов: 4255
Профиль | | #6
Добавлено: 18.03.09 16:27
также попробуй занулить все DataSource и всех гридов
Номер ответа: 7
Автор ответа:
Vugar Miriyev
ICQ: 321950466
Вопросов: 24
Ответов: 28
Web-сайт:
Профиль | | #7
Добавлено: 18.03.09 16:32
То что это связано с датагридами факт, т.к. проверял с таблицей без записей все нормально, а вопрос обнуления datasource на повестке, буду пробовать завтра, на сегодня перенапрягся. Если что надыбаю поделюсь опытом.
P/S/ Кстати че то Steela не слышно, он часом не попал тож под кризис или вы не общаетесь?
Номер ответа: 8
Автор ответа:
EROS
Вопросов: 58
Ответов: 4255
Профиль | | #8
Добавлено: 18.03.09 16:51
Кстати че то Steela не слышно, он часом не попал тож под кризис или вы не общаетесь?
Не знаю, он мне не докладывает.. у него своя жизнь, у меня своя..
И,кстати, что значит тоже? Кто то еще попал под кризис?
Номер ответа: 9
Автор ответа:
Vugar Miriyev
ICQ: 321950466
Вопросов: 24
Ответов: 28
Web-сайт:
Профиль | | #9
Добавлено: 18.03.09 16:54
Это у нас на работе посокращали несколько девелоперов, :[ , anyway спасибо.