DelphiおよびHDD I / Oの引用は、リソースプリキャッシュ機能は、読み取り/書き込み/制限するパラメータを求めます
質問
私は動的配列は、ブロックリード()と、この操作でた.rawファイルから読み込まれたバイト、で満たされている、論理的に、シェル資源の地獄を必要とし、私はいくつかの量または制限を確保するためにあらゆる方法があるかどうかを知りたいと思いました読み取り/書き込みの最大量/シーク*****
ハードディスクドライブからプログラムの実行時に使用の [解明の:私は窓が/内部アプリケーションリソースをシェルでアクションを実行しながら、HDDから最大読み出し速度を設定することを意味。この瞬間ではアプリは、HDDのパフォーマンスに非常に敏感であるが、システムがディスク操作を管理することができないので、それは/ロックを凍結する複数のマシンになり...
私は、任意の方法、チュートリアル、最悪の場合ユニットにした関数の宣言とクラスの情報を見つけることができます。
について知りたいと思いました私が知っているように多くの、パスカルは、Delphiのベースは非常に簡単なアプローチを提供しないよう最善のように私は、私はストリームを使用しているとして、多くの... TStreamにまたはTPipelineの使用量(TSocketは右、良いことではないでしょうか?)かもしれませんTFileStream ...
といくつかの水中の石があったので、それを好きではなかったですとにかく - ディスクのパフォーマンス管理に私に少なくともイントロを与えてください...
解決
私は、Windows APIまたはいくつかのDelphiの機能を使用してIOの活動を絞る方法はありません怖いです。 (例えば、スレッドとは違って)
あなただけのIOがあなたのコードにスリープコマンドまたは類似した何かを追加することにより、アクセス速度が低下することがあります。
あなたは WMI <を使用して、現在のIOアクティビティを読むことができました/>高いIOアクティビティがあります場合は、あなたの遅延を増やします。
他のヒント
RE: "私はHDDから最大読み出し速度を設定するためのもの..."
ただ、自分自身を絞る行います。何が必要スループットに応じてバックグラウンドスレッドでのディスクアクセスを行い、業務を絞るます。