Xvfbはメモリを解放しません。

Xvfbはメモリを解放しません。

私たちはソフトウェアのウェブサイトのスクリーンショットを作りたいと思い、CutyCaptとXvfbを使ってこれを行います。

残念ながら、CutyCaptがスクリーンショットを撮るたびに、Xvfbのメモリは増えます。少年の記憶が爆発するまで。これはCutyCaptとは何の関係もありません。アプリケーションの終了時にXvfbが一部のメモリをクリーンアップしていないようです。

どのような解決策がありますか(Xvfbを再起動することに加えて(今はパッチでcronを介してこれを行います))。

Xvfb :1 -screen 0 1280x1024x24私は(もちろんスクリプトから;))を使ってXvfbを起動します。

答え1

-noresetXvfbにパラメータを追加すると、メモリリークが削除されます。この問題に関する私の記事を参照してください。ここ

答え2

Xvfbには既知のメモリリークがあります。Red Hat のバグ #498357(そして#201536前)。

特定の間隔の後、またはメモリサイズが特定のしきい値([ $(ps -o vzs= $pid) -ge $threshold ])に達するか、特定の数のスクリーンショットの後にXvfbを再起動することは、このバグが検出され修正されるまで合理的な解決策のようです。

関連情報