Android アプリケーションのロギング システムを最適化しようとしていますが、これにより望ましくない遅延が発生します。さまざまな部分を記録する複数のファイルが開かれているため、別々に保管する必要があります。
私は低レベルのファイルシステムの設計にはあまり詳しくなく、(従来の HDD とは対照的に) 携帯電話で使用されている現在のフラッシュや SSD メモリについてはさらに詳しくありません。メモリはディスク ブロック (最近では 512B または 4096B) で編成されており、何らかの形式の連続した、リンクされた、またはインデックス付きの割り当てが使用されていると想定しています。バッファ サイズが 256B の s を使用してBufferedOutputStream
いますが、この値はランダムに選択されます (これはバッファ サイズの適切な答えです)。
開いている複数のファイルに追加モードで書き込むと、パフォーマンスが大幅に低下する追加のオーバーヘッドが発生します (例の割り当て戦略から)。バッファリングされた出力バッファ サイズ (複数ファイルのこの特定のケース) に大きく影響されますか?
私はさまざまなFSを持つ傾向がある Android を使用しており、それぞれが開いている複数のファイルへの追加にどのように影響するかを理解するのが難しくなっています。おそらく、Java やその他の I/O 関数は非常に似ています。
この特定の問題に対する私の検索は空になったか、検索になじみのないドメイン固有の用語が必要かもしれません。