私たちも同様の問題を抱えていました。セッションを閉じないと BlazeDS でメモリ リークが発生していました。swf ラッパー javascript で以下のスクリプトを作成し、ブラウザーを閉じると flex でセッション クロージャー コードが呼び出されるようにしました。
<script language="JavaScript" type="text/javascript">
function cleanup()
{
getMyApplication("swf_filename_without_extension").cleanUp();
alert("Disconnected! Press OK to continue.");
}
function getMyApplication(appName)
{
if (navigator.appName.indexOf ("Microsoft") != -1)
{
return window[appName];
}
else
{
return document[appName];
}
}
</script>
<body onbeforeunload="cleanup()">
Flex では、作成完了リスナーにコールバックを追加します
ExternalInterface.addCallback("cleanUp",cleanUp);
すべてのセッション クロージャ コードを cleanUp メソッドに記述します。
注: アラート メッセージを JavaScript で入力することを忘れないでください。これにより、cleanUp メソッドを実行するのに十分な時間が与えられます。