c# -将数据写入流+从另一个流中读取数据

本文关键字:数据 读取 另一个 | 更新日期: 2023-09-27 18:02:46

现在我有一个StreamWriter和一个StreamReader, 1个文件,保存(文本)数据,至少2个线程。1个线程是侦听器并读取数据。另一个线程向流中写入内容。

可以避免使用文件作为内存缓冲区吗?

我认为有可能从两端连接两个流。但不知道怎么回事。我创建写入文件的写入器。然后我启动一个线程,创建一个读取器,读取这个文件并完成它的工作。它可以工作,但我想避免文件的东西。


// writer
StreamWriter writer = new StreamWriter(new FileStream("text.txt", FileMode.Create, FileAccess.Write, FileShare.Read));
writer.AutoFlush = true;
// reader
StreamReader reader = new StreamReader(new FileStream("text.txt", FileMode.Open, FileAccess.Read, FileShare.ReadWrite));

c# -将数据写入流+从另一个流中读取数据

我发布了一个叫做ProducerConsumerStream的程序,它可以做到这一点。它是一个内存流,允许一个读取器和一个写入器。它是一个固定大小的循环缓冲区,允许消费者读取和生产者写入一样快。