使用VB.NET同时读写文本文件

时间:2013-04-01 16:22:50

标签: vb.net file-io

我有一个程序必须读取代码栏并将读取的代码写入文本文件中。每30秒启动一个线程,读取该文件以执行某些操作并删除已处理的行。

我的问题是,当我从主线程中读取文件时,它必须能够写入更多行,并且稍后可以读取每30秒启动一次的线程。

我真的没有找到任何关于如何处理问题的样本或想法。有解决方案吗?

2 个答案:

答案 0 :(得分:1)

当您拥有像此文件这样的共享可变资源并且多个单元访问它时,通常会使用锁定。锁可以存在于程序中,但也可以由许多文件系统提供。需要访问时锁定文件,并在不再需要时释放锁定。这样,只有程序的一部分可以在任何给定点访问该文件。

答案 1 :(得分:1)

如何使用Queue作为“实时”数据,而不是使用文件作为后续存储来完成工作?您仍然可以将文件用作日志,在项目排队并从队列中删除时输入条目,以防您需要返回操作历史记录。这样,除非需要某种回滚,例如你的程序在不合时宜的时刻停止,否则只需要附加文件并从不读取文件。