【发布时间】:2016-11-05 15:43:53
【问题描述】:
今天我想知道如何将图像保存到 Stream(真的在内存中,我可能没有使用适当的术语)并从另一个线程中读取它。
为此,我认为要继续执行以下步骤: A - 在第一个线程中: 1 - 从文件创建图像对象 (System.Drawing) 2 - 创建缩略图 3 - 将缩略图保存到流 (System.IO) 4 - 将 Stream 对象发送到第二个线程。
B - 在第二个线程中: 1 - 从第一个线程接收流 2 - 使用此 Stream 创建 BitmapImage 对象 3 - 在用户界面上显示。 (wpf)
谢谢。
【问题讨论】:
-
如果 T2 接收的内存与 T1 发送的内存相同,则保存和读取需要一个公共锁对象,这样它们就不会同时发生。
-
为什么要使用流? A) 1 - 创建图像对象; 2. 将对象发送到第二个线程。 B) 1.接收图像对象; 2. 在用户界面上显示。 (Wpf)
-
@Fabio 我试过这个,但我没有这样做,因为我无法使用 T2 发送的对象。如果你有一个例子来解释我如何做到这一点,你可以告诉我。
-
你能展示一下代码 - 你如何将流从线程 1 发送到线程 2 吗?
-
对不起,我已经删除了代码。
标签: c# multithreading memory