2

私は Qt/qml ベースの UI に取り組んできました。

画面の「動的オン要件ロード」のようなものを使用しました。(ローダー要素を使用)

利点: 起動時にすべての画面をロードする必要がないため、システムの起動時間が短縮されます。

欠点 : 後で画面をロードする必要があるたびに、時間がかかり、その瞬間のユーザーの応答性が低下します。

私の質問は、UI画面をロードすると言ったときに実際にメモリに「ロード」されるのは何ですか?

つまり、C++ コードであれば、いくつかの動的オブジェクトが作成されているように理解できます。UI画面で視覚化できませんか?UI の作成に使用した画像が、さまざまな操作のためにメモリに読み込まれるようなものですか?

前の質問に加えて、画面を「アンロード」するとどうなりますか?

ロードとアンロードの CPU 要件は同じですか?

4

2 に答える 2

2

宣言型エンジンがqmlファイルをロードするときに正確に何が起こっているのか、非常に優れた詳細な説明があります。

http://www.kdab.com/qml-engine-internals-part-1-qml-file-loading/

于 2012-10-09T01:05:38.487 に答える
1

loader を使用して QML オブジェクトをロードすると、プログラムは実際に、QML ファイルにある各要素のメモリ内にオブジェクトを作成します (その要素クラスのコンストラクターを呼び出します)。ファイル内の任意の QML 要素は、対応する c++ クラスと考えることができます。これらのビューをアンロードすると、各要素のデストラクタが呼び出されます。したがって、最後の質問に対する答えは、ロードとアンロードの CPU 要件が異なるということです。

于 2012-10-08T09:58:23.507 に答える