gpt4 book ai didi

c# - 为多个消费者读取一次流

转载 作者:太空宇宙 更新时间:2023-11-03 13:09:42 25 4
gpt4 key购买 nike

我们有几个(大)图像文件。我们想从这些文件创建缩略图,同时记录它们的 MD5 和。

理想情况下,我们希望程序只读取这些文件一次,并且永远不会返回位置。然而,由于数据服务于两个消费者,尽管我们可以创建多个线程,但我们无法避免多次读取文件。

所以要求是:假设一个只读的、只转发的流,如何使用它来提供 new Bitmap(stream) 和对 md5.ComputeHash(stream )? (该解决方案应扩展到其他流消费者)

我们如何做到这一点?

最佳答案

针对您的具体情况:

不是调用 md5.ComputeHash(stream),而是调用 new CryptoStream(stream, md5, CryptoStreamMode.Read)
此流将镜像原始流,但也会通过 MD5 哈希器传递它。
一旦流被读取到末尾,md5 实例将保存哈希。

关于c# - 为多个消费者读取一次流,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29503396/

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