gpt4 book ai didi

c# - 重新使用 GDI+ 对象是不好的做法吗? (或 : How to use many nested using blocks without getting headaches? )

转载 作者:行者123 更新时间:2023-11-30 14:20:16 26 4
gpt4 key购买 nike

我目前正在为用户控件编写一个相当复杂的绘制方法,涉及相当多的绘制代码。我知道所有 GDI+ 资源都需要妥善处理,所以我将每个资源包装在 using block 中。

但是当我注意到我为三个不同的 SolidBrushes 使用了三个 using block 时,我想知道我是否不能重复使用它们。创建一个 SolidBrush,用它绘制,分配不同的颜色,绘制其他东西等等。最后放一个 Dispose()

这样的事情是可取的还是我在这里考虑太多?我也不太喜欢彼此嵌套太多的 using block 。虽然是一个很好的模式,但有时会妨碍可读性。

最佳答案

好吧,重用是一种优化,它可能为时过早,因此:是的,这是一种不好的做法。我会等待明显的性能问题浮出水面,然后寻找瓶颈。您将以一些(未知的)性能提升来换取管理这些组件状态的快速增加的复杂性。

顺便说一句,一种被广泛接受的嵌套 using block 形式如下所示:

 using (var a = ...)
using (var b = ...)
using (var c = ...)
{

}

关于c# - 重新使用 GDI+ 对象是不好的做法吗? (或 : How to use many nested using blocks without getting headaches? ),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1491645/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com