У меня есть приложение, которое делает много рисунков, пусть делает вид, что это приложение, подобное Viso. У него есть объекты, которые имеют несколько под-объектов, которые нарисованы, вещи могут быть связаны, изменены и т.д. В настоящее время, когда я вызываю краску на конкретный под-объект или объект, я делаю следующее:
using(var pen = new Pen(this.ForeColor))
{
// Paint for this object.
}
Я читал противоречивые ответы, что это должно быть сделано для приложения, которое постоянно рисует одно и то же (может быть, просто изменено, перемещено и т.д.). Должен ли я хранить объект Pen/Brush
с объектом, а затем удалять их все, когда приложение удаляется, или они достаточно эффективны для создания/размещения для каждого вызова краски (помня, что это приложение с интенсивной графикой).
РЕДАКТИРОВАТЬ. Уже есть два ответа, которые имеют противоречивые ответы, и именно здесь я не уверен, чтобы сделать переключатель. Кто-нибудь имеет какие-либо статистические данные о различиях?