在Python中同时读写文件
我正在计划一个用Python3写的应用程序,这个程序会用到三个文本文件或者三个数据库表,我还不确定用哪个。这些文件里只包含字符串,或者在数据库表里每一行都有一个字符串。
这个应用程序有三个程序,分别是program_A、program_B和program_C,它们会处理这三个文件,分别是file_A、file_B和file_C。Program A会读取和写入file_A,读取file_C并写入file_B;program_B会读取和写入file_B;program_C则会写入file_A和file_C。file_A和file_B可以看作是一个想象中的队列,程序会从文件中读取一行,然后把这一行删除(所以我提到读取/写入),而写入文件的程序则是把一行加到文件的末尾。
我不太确定这些程序该怎么一起工作,因为它们是同时访问这些文件的。我查过sqlite的文件锁定状态,但不知道怎么用它来解决我的问题。我也不确定是应该使用sqlite数据库还是简单的文本文件。
我还在考虑使用某种共享内存,或者内存数据库,这样我可以在应用程序启动时加载这些文件的内容,并在应用程序退出时再写回文件,但我担心如果出现软件或硬件故障,会导致我在这次运行中做的工作丢失,因为文件没有因为故障而更新。