Действительно ли важно расположить SolidBrush и Pen?

Индексы создаются в существующей таблице для определения местоположения строк более быстро и эффективно. Возможно создать индекс на одном или нескольких столбцах таблицы, и каждому индексу дают имя. Пользователи не видят индексов, они просто используются для ускорения запросов.

В основном, Ваш DBMS создаст своего рода древовидную структуру, которая указывает на данные (из одного столбца) отсортированным способом. Таким образом, легче искать данные по тому столбцу (столбцам).

http://en.wikipedia.org/wiki/Index_ (база данных)

17
задан Joe 30 November 2009 в 13:39
поделиться

4 ответа

Конечно, это имеет значение. Важно удалить все экземпляры классов, реализующих IDisposable, когда они больше не нужны. Классы определяются IDisposable, когда они используют неуправляемые ресурсы, то есть ресурсы операционной системы, которые не обрабатываются .NET Framework.

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

Обсуждение этой темы можно найти здесь: http://agilology.blogspot.com/2009/01/why-dispose-is-needed-and-other.html

5
ответ дан 30 November 2019 в 14:25
поделиться

Объекты должны быть удалены сборщиком мусора после того, как они выпали из области видимости, если на них не ссылается ничто другое.

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

1
ответ дан 30 November 2019 в 14:25
поделиться

Это просто утечка неуправляемых ресурсов (пера / кисти), пока соответствующий управляемый объект не будет возвращен сборщиком мусора. Таким образом, вы тратите впустую несколько дескрипторов, которые больше не используются.

Это не слишком большая проблема, потому что Finalize () вызовет Dispose () , но освободит неуправляемые ресурсы обычно следует делать раньше, чем позже.

1
ответ дан 30 November 2019 в 14:25
поделиться

вдобавок, я бы скажите, что предпочтительнее использовать готовые коллекции: System.Drawing.Pens. а также System.Drawing.Brushes. если вы не настроите их особым образом.

0
ответ дан 30 November 2019 в 14:25
поделиться
Другие вопросы по тегам:

Похожие вопросы: