3 つのテキスト ファイルまたは 3 つのデータベース テーブルを使用する python3 でアプリケーションを計画していますが、何を使用すればよいかわかりません。
アプリには、これらの 3 つのファイル、file_A、file_B、および file_C を操作する 3 つのプログラム program_A、program_B、program_C があります。プログラム A は file_A を読み取り/書き込み、file_C を読み取り、file_B に書き込みます。架空のキューにすぎないため、プログラムはファイルから行を読み取り、その行をファイルから削除します(したがって、読み取り/書き込みについて言及しました)。ファイルに書き込むプログラムは、ファイルの最後に行を書き込みます。
これらのプログラムは同時にファイルにアクセスしているため、これらのプログラムを動作させる方法がわかりません.sqliteファイルのロック状態を調べましたが、それを使用してシナリオを解決する方法がわかりません. sqlite データベースまたは単純なテキスト ファイルを使用する必要がある場合。
また、ある種の共有メモリ、またはアプリの起動時にこれらのファイルの内容をロードし、アプリの終了時にファイルに書き戻すことができるメモリ内データベースを使用することも検討していますが、ソフトウェア ハードウェアの障害が発生することを意味するかどうか心配しています。失敗のためにファイルが更新されなかったため、そのアプリの実行で行われた作業が失われます。
3454 次
1 に答える
1
同じファイルで読み取りと書き込みを行いますか? いいえ、これは苦痛と苦難をもたらすだけです。threadingまたはmultiprocessingのデータ共有メカニズムを試しqueue
て、ニーズに合った実装を行うことができます。
これらの「キュー」などの順序を設定するために必要なデータを追加できるため、sqlite アプローチも問題ないように見えますが、私はデータベースを介して通信するプロセスのファンではありません。
于 2013-02-20T09:51:35.467 に答える