ImageBrush 可以多线程工作吗?
我正在使用图像处理 WPF。当调用 Image 控件来设置 imageSource 时,如果图像来自不同的线程而不是 GUI 线程,则需要使用调度程序。
我只是想知道是否可以设置 ImageBrush而不是多线程工作。
问候
I am working on WPF with images. When calling an Image control to set the imageSource it is needed to use the dispatcher if image comes from different thread instead of the GUI thread.
I just wonder if I can set an ImageBrush instead to work multithreaded.
Regards
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
不,不是图像而是整个 WPF 框架不是线程安全的。
因此,对 GUI 的任何操作都必须来自主线程(已调度)。
No, it is not the image but the whole WPF framework that is not thread-safe.
So any manipulation to the GUI has to be from the main thread (Dispatched).
如果您在 ImageBrush 上调用 Freeze(),则可以在多个线程中使用它。不过,您只能在主线程中访问图像控件。
If you call Freeze() on the ImageBrush, you can use it in multiple threads. You can only access the Image Control in the main thread though.