ブラウザの
<input type="file" webkitdirectory />
に大量のファイルを列挙させると死ぬほど遅いんだけど、そういうものなんだろうか。NASに置いた2万弱のファイルで4分以上かかってる。同じことをC++でやると3秒で終わる
Chromeだと数秒で終わったわ。Firefoxくん…
プロファイル取ってみた。なんかファイルの属性を取ろうとして遅くなってるのかな
ブラウザでローカルファイルを列挙する方法には他にもdropイベントでDataTransferItem.webkitGetAsEntry()を使うとかがあるらしい。こっちだとFirefoxでもUIが固まらずに済んだ。
Google Driveでフォルダをアップロードするときの挙動を観察すると、ダイアログから選択した場合は<input>要素を、D&Dした場合はdataTransferを使っていそう (前者の場合はやっぱりUIが数分間固まる問題がある)
様々な目的に使える、日本の汎用マストドンサーバーです。安定した利用環境と、多数の独自機能を提供しています。