我正在尝试为网站构建一个资源文件,基本上将所有图像都压缩成一个压缩文件,然后在输出缓冲区中解压缩到客户端。
我的问题是在vb2005中,如果你知道转换文件的大小,文件流是多线程的,ala就像有点洪流,并处理文件流的部分(在这种情况下是单个文件)并将它们添加到资源文件流何时完成而不是一次?
答案 0 :(得分:1)
如果你需要类似于torrents写入文件的方式,这就是我实现它的方式:
:)
无论如何,从您的评论中,您的问题似乎是另一个......
我找到了一些东西,但我不确定它是否有效:
如果要将数据写入文件, 可以使用两种并行方法,
WriteByte()
和Write()
。WriteByte()
将单个字节写入流:
byte NextByte = 100;
fs.WriteByte(NextByte);
另一方面,
Write()
写道 一个字节数组。例如,如果 你初始化了ByteArray
你之前提到的一些价值观 可以使用以下代码编写 超出数组的前nBytes:
fs.Write(ByteArray, 0, nBytes);
引自:
Nagel,Christian,Bill Evjen,Jay Glynn,Morgan Skinner和Karli 沃森。 “第24章 - 操纵 文件和注册表“。专业 C#2005 with .NET 3.0。 Wrox出版社。 © 2007. Books24x7。 http://common.books24x7.com/book/id_20568/book.asp (2009年7月22日访问)
答案 1 :(得分:0)
我不确定您是否在询问是否可以以多线程方式读取或写入System.IO.FileStream对象。但两种情况下的答案都是否定的。这不是受支持的方案。您需要添加某种形式的锁定以确保对资源的序列化访问。
该文档将对象的多线程访问称为不受支持的方案