私は、ディスクから複数の大きなページを読み取り、いくつかの範囲検索を実行するプログラムを開発しています。プログラムは複数のページから読み取り、クエリ結果を出力ページに書き込みます。出力の順序を維持して、入力の順序に対応させる必要があります。主な機能はディスクから読み込むプログラムをマルチスレッド化することをお勧めしますか?
しかし、プログラムは複数の読み込み後に非常に遅くなるので、私はマルチスレッドプログラムを使って一度にいくつかの検索を実行することを考えています。私は4コアのLinuxマシンを持っており、私はこのプログラムの2つのスレッドを持っていたいと思います。いいアイデアですか?出力ファイルの順序をどのように維持できますか?どのスレッドが最初に終了するのか分からないので、ロックは役に立たないでしょう。
どうすればよいですか?
おかげ
更新
:これは、SQLライブラリのいずれかの種類を使用せずに行われなければなりません。
プログラムは、データを処理しますか?読んでいると、複数のコアがあなたを助けません。複数のディスクやSSDを入手すると役立ちます。 – Joni
読書は問題です – Salma