我有一个应用程序,它进行了很多绘图,假设它是一个类似于Visio的应用程序。它有一些具有多个子对象的对象,这些对象可以被绘制,连接,调整大小等。目前,当我对特定的子对象或对象调用paint方法时,我会执行以下操作:
using(var pen = new Pen(this.ForeColor))
{
// Paint for this object.
}
我看到了不同的答案,有人说在一个不断绘制相同内容的应用程序中(可能只是调整大小、移动等),应该这样做。我应该将 Pen/Brush
与对象一起存储,并在应用程序被处理时全部释放它们,还是创建/释放每个绘画调用所需的效率足够高(记住这是一个相当图形密集型的应用程序)。
编辑:已经有两个答案提供了相互矛盾的答案,这就是我不确定是否要进行切换的地方。有没有人对差异有任何统计数据?