gpt4 book ai didi

C# WinForms : Drawing with one or more additional threads. 怎么办?

转载 作者:太空狗 更新时间:2023-10-29 21:35:57 25 4
gpt4 key购买 nike

如果我有一张包含各种几何形式(直线、矩形、圆形等)的大图,线程绘制所有内容会花费大量时间。但在现实生活中,一座建筑是由不止一名 worker build 的。因此,如果绘图是建筑物而线程是 builder ,那么它的绘制速度会快得多。但我想知道怎么做。

你能告诉我怎么做吗?甚至有可能吗(尽管我已经问过并且答案是"is")?值得使用吗?有什么风险?

如果有我遗漏的问题,请告诉我并回答。

谢谢!

最佳答案

假设您正在使用 GDI+ 和 System.Drawing.Graphics 对象将图形(矩形、圆形等)渲染到背景绘图表面(例如 System.Drawing.Bitmap 对象):您需要使用的 System.Drawing.Graphics 对象的实例成员不是线程安全的See MSDN documentation here

鉴于此,我不会使用多个“生成器”线程来渲染您的图形。

相反,如果可能,我的建议是在单个 后台线程而不是多个后台线程中对System.Drawing.Bitmap 对象进行所有绘图。您可以使用状态栏或其他指示器让用户知道您的程序正在后台运行。

关于C# WinForms : Drawing with one or more additional threads. 怎么办?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7570585/

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