組み込み環境でアプリケーションを開発します。これは、busybox Linux システム上に完全な Web ブラウザーを備えた高レベルのコンピューティング環境です。唯一の例外は、システムのシステム メモリの量が限られていることです。
私たちのアプリケーションは JavaScript で構築され、Webkit ベースの Web ブラウザ内で実行され、順番にロードされる多数の JavaScript モジュールで構成されています (これはあまり効率的ではありません)。
一部のモジュールは、複数のモジュールで使用される共通の機能を提供します。現在、requirejs を使用して現在の JavaScript ローダーを変換中ですが、最初に対処しなければならない特定のニーズが 1 つあります。
モジュールがrequirejsを使用してロードされている場合、モジュールをアンロードすることは可能ですか? 以下を使用してモジュールを動的にロードするとします。
require(["somemodule.js"], function(m) { m.run(); } );
これは、「somemodule」のロードと実行、および「somemodule」のすべての依存関係の解決にもうまく機能し、requirejs フレームワークは将来のリクエストのために「somemodule」への参照を保存します。
ある時点でメモリを再利用する必要がある場合、たとえば無限の数のモジュールをロードして実行できるようにするために、しばらくしてからそれらのいくつかを削除し始める必要があります。内部実装を変更せずにrequirejsでそれは可能ですか?
誰もこの種の問題を以前に扱ったことがありますか? ほとんどの単一ページ JS アプリは、デスクトップ PC の Web ブラウザーで実行され、通常はメモリ使用量が大きな問題になることはありません。