ウィンドウは空きメモリ使用量を最小化しますか?


13

表示されていない最大化されたウィンドウと最小化されたウィンドウの両方は、エンドユーザーには見えません。非表示とは、アクティブなウィンドウで覆われた非アクティブな最大化されたウィンドウを意味します。

ただし、Compizと同様に、アプリケーション切り替えサービスで明らかになります。最大化されたウィンドウの外観はWindow Managerに「認識」されているため(サムネイルを生成できるため)、最小化されたウィンドウはアイコンで表されます。のみ(ウィンドウの外観/内容は計算されません)。

これは、ウィンドウが最小化されたときにメモリが解放されるということですか?WMが最大化できるウィンドウの数にメモリによる制限はありますか?そのような制限がある場合、それは実質的/関連ですか?

最小化を許可しないWMを想像してください(ただし、単に最大化されたウィンドウを切り替える):このWMは、メモリ使用量のためにエンドユーザーにかなりの制限を課しますか?

これをクリアしてくれてありがとう---私は間違った考えを持っているかもしれません。

回答:


10

ウィンドウを最小化すると、少しのメモリが解放される場合がありますが、それはアプリケーションによって異なり、それほど多くはありません。いずれにせよ、最小化は、他の形式の非表示よりも大きな違いはありません。

アプリケーションのウィンドウが最小化されていても、実行されたままです。アプリケーションは、ウィンドウの1つが最小化されているという理由だけで、メモリに保持するデータを少なくする必要はありません。

アプリケーションは、ウィンドウの1つが最小化または復元されるたびに通知されます。また、ウィンドウの一部が表示または非表示になるたびに通知されます。可能性は低いですが、ウィンドウが隠されているさまざまな理由により、アプリケーションの反応が異なる可能性があります。

  • これは最小化できます。つまり、ウィンドウは表示されず、代わりにアイコンが表示されます。
  • 他のウィンドウ(スクリーンセーバーのフルスクリーンウィンドウを含む)の後ろに隠すことができます。
  • 別のデスクトップ、ワークスペース、ビューポート、またはウィンドウマネージャーがこれらを呼び出すものに表示できます。
  • 他の方法で非表示にすることもできます。たとえば、「影付き」(タイトルバーのみを表示)、または単にマッピング解除(ウィンドウマネージャーがウィンドウを表示しない理由を決定したこと)です。

アプリケーションのウィンドウが完全に隠されている場合、アプリケーションはウィンドウの内容を更新する必要はありません。そのコンテンツを更新するためにメモリを割り当てる必要がある場合、ウィンドウが非表示になっている間はメモリを割り当てません。また、ウィンドウが(何らかの理由で)非表示になっている場合、アプリケーションはXサーバー内のメモリを少し解放する可能性があります。

実際の違いは、ウィンドウが表示されていない場合、アプリケーションがコンテンツを再描画するための計算を行わないため、コンテンツの描画に必要なデータを交換できることです。RAMがタイトで、しばらくの間処理しないウィンドウがある場合は、ウィンドウがマップされていない方が良いでしょう。繰り返しますが、ウィンドウがマップされない理由(他の背後に隠れ、最小化、影付きなど)は重要ではありません。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.