ajaxで定期的に鯖から何かget、とかさせていると、そのたびに4K〜16Kほどのメモリを食って、離さにゃい気がする@IEの件で、とりあえず何とかにゃったのでメモ。
まずリークする場合の、激しく簡略化したソース。
function post2(arg){
var req = new ActiveXObject("Msxml2.XMLHTTP");
req.onreadystatechange = function(){
if(req == undefined) { return 9; }
if(req.readyState != 4) { return 4; }
if(req.status != 200) { return 2; }
window.status = "ok";
setTimeout('post2()',1000);
}
req.open("POST", "./?mode=test", true);
req.send("test"+arg);
}
よくそこらへんで紹介されてる方法にゃんだが、reqが開放されずに残るのよね。にゃのでしばらく放置しておくとIEの使用メモリが50Mとかににゃってたりする。
ので、使用後(ここではsetTimeoutの後とか)にreq = null;しにゃければにゃらにゃい。
こんにゃメモリ管理はお任せのつもりだったので、身近にゃ低機能言語としてマーク。うーん、そりゃまぁ使わにゃくにゃったかどうかの判定て難しそうだけど、ダメにゃ場合はダメとリファレンスに大きく載せておくべきだと思うにゃぁ。読んだこと無いけど。ページ丸ごと書き換え〜とかしてると数k単位どころか1M単位で使用メモリが増加するんでは無かろうか。
あと、こういう単純にゃ構造にゃらreq = nullを1つ入れれば解決にゃんだが、もっと構造がぐちょってたり、DOM関連で入れ子してたりするとたぶんこの程度では無理と思われる。再帰で
for(var x = obj.length;x--;){
obj[x] = null;
delete obj[x];
}
して末端までnullで埋めたり、グローバル変数を
var n=乱数;
eval("TMP_"+n+"=obj");
で確保しておいて、nを参照せずにそのまま受け渡すとか(笑)
いろいろダメっぽい解決法を考えてみたが非常にアレにゃので、おしえておねがいさみあドン。
さらにメモだが、上と関係にゃいところで基本的ハマり要素として、
X=[];
n=5;
X[n]=0;
X[n]=null;
delete X[n];
とかしても、X[n]が確保したメモリは解放されにゃい。検証してにゃいけど、一度確保した連想配列は開放されにゃいというか何というか。よって、perlのハッシュのように用いるとえらいことににゃる(笑)
上の変数reqをグローバルにゃ配列に作っちゃえば安易に消せるだろうと思って組んだら、配列Xそのものを消さにゃいとメモリ解放されにゃかったりしてハマったわけで。
しかも、この手の配列を参照するときに線形検索してるようにゃ気がする。よくわからんが変に遅い。もうめんどくさいからperlのハッシュ機構載せてくれと。
それにしてもこの問題、根が深いにゃぁ。IEが単にダメってことだと思うけど、例えばgoogle newsを1週間くらい開いていたIEって数百Mもメモリ食ってるわけで、根本的にゃところでやばいことが起きてそうにゃ気がする。
プリンセスソフィー登場
「今日は同じ負け組同士、がんばりましょうね☆」
すげええ(爆) このくらいの台本密度が続けばほんと神懸かったものににゃるのににゃぁ。
ところで兄に連行されるアルテッサが萌え
久々、リオーネ。やっぱり牙が素晴らしい。
各国のプリンセスも良い感じ。しずくの国の丸耳姫とか
。
そんにゃとこまでリアルにせんで良い感じのミルキーとか
。
でもって今回も良いところのにゃいティオと、駆け寄ってみたものの手を出しにくいリオーネの姿勢が良すぎ。プリンセスらしいかどうかで言えばやはり最もプリンセスらしいのでは無かろうかと思うね。
無駄に抜きん出てる人
、反則
、獅子パワーと今回は見所が多い。
そして獲物を食いちぎった後の満足そうにゃリオーネの表情が。
。
一方ではソフィー節が炸裂していて目が離せにゃい(笑)
ていうかそのでかい耳について誰か言及してくれ。
うわ丸耳姫めちゃ気が弱い
。リオーネだけかと思ったら・・・。
借り物ネタはティオのしっぽ
。にゃんでリオーネじゃにゃいかにゃぁ。まぁ萌えだけど
。
にゃんか犬の糞の処理してます〜てイメージににゃりつつあるソフィー
。もうちょっとにゃんとかにゃらんか(笑)
で、ビリの人に最もめんどくさい課題が当たる法則
。
意外にゃ一面ていうか秘めたる獣の側面発動ってことで、騒動の発端を作るリオーネ(笑)
帽子の有無がちゃんと区別されてるプロミネンス(但し失敗)
何かに似てるんだがよく分からん動物系の滴の国の丸耳姫
。
ということで久しぶりに笑いました。リオーネも良い感じ。双子は比較的どうでも良いので、今後も周辺諸国の姫達を追っかけて欲しいにゃ。
♦ 「命名の儀式?」 ハンバーガー駅でカメレオン総理からTEL。ってにゃんかBGMの繋ぎに失敗してるようにゃ。
「命名の儀式?」
シルバーにスタンプが押されて、
「14月の旅、ふぉ〜〜〜!」
♦ 早口言葉♦ 無駄でした 「(フィレオにはぜったい会いたくにゃいわ!)」
ということで天使探しを優先するも・・・
今回の早口は「バスガス爆発」三回。
さすがにぎりぎり言えてる(笑)
♦ プーニャ♦ プーニャ あ プーニャ発見。
いろんにゃ人にとってはた迷惑にゃ猫である。
今回の野菜の精は、
レンコポッチと
ニンジッピ どうでもいいがデジタル編集でラインが半減してる所があったりでPCで見るとつらい(笑)
♦ レンコポッチ♦ べろべろば〜 夫婦げんかの進行がちょっとどうかとは思うが、国レベルの話にゃのでありがちではある。
そしてそこら辺はスルーして、シルバーのべろべろばぁ。
まぁ親があれではにゃ。
♦ 紙石鹸 ところで、アイキャッチはずっとこれ。
お気に入りにゃのでこのままでよいのだが、肝心の紙石鹸が最近出てこにゃい。
このアイテム一つから、かにゃりの場面を引っ張り出せるほどの名アイテムにゃのだが、まー、死神編が終わってしまってはしょうがにゃいか。
♦ レンコポッチとニンジッピ♦ プーニャ。♦ レンコポッチとニンジッピ レンコポッチとニンジッピ。ニンジッピが気弱にゃ男の子であるため、こういう場面では実に良い感じに。
そしてプーニャ。
♦ レイヤが甘いのは目をつぶるとして♦ プーニャ♦ プーニャ♦ プーニャ♦ プーニャ♦ プーニャ シリーズ始まって以来初めての、そしてとてつもにゃくプーニャを心強く感じる場面。かっこよすぎ。
♦ レンコポッチとプーニャ♦ レンコポッチとプーニャ べろべろば〜・・・ってぷーにゃはともかく、レンコポッチが(笑)
しかし絵単体で見ると、もともと2匹とも人外にゃので、それ以上顔を変化させる必要があるんだろうかとか・・・
まぁこういうシーンで、キャラデザの深淵が覗けるんだろうにゃ。
♦ プーニャ♦ プーニャ♦ プーニャ 事件そのものより、プーニャと天使に関して、実に心温まるシーンである。
このずれてるけど一生懸命でひたむきにゃプーニャの何かは、「母」属性にゃんだろうにゃぁ。それをまざまざと見せつけられるのが今回。
♦ プーニャ♦ にゃにゃにゃ まー、ドジはドジにゃので、危険とも言えるが・・・これ見てると任せられる気ににゃっちゃうくらい。
ちにゃみにどうでもいいが、泣く子をあやすプーニャの「にゃ、にゃ、にゃ」が非常に萌え。 後でうんざりするだろうが、こういう保母に育てられるのも良いかもしれにゃい(笑)
♦ うんざりシルバー♦ プーニャ♦ レンコポッチ 「やめるっち!」@レンコポッチ
いやまったくそのとおり。
でも経験0も良くにゃいと思うにゃ。やりすぎにゃいことかと。
♦ 筆♦ 僕たちの子供・・・ だれかそう言えよ(笑)
で、シルバーとの子供の話題をふってみるフィレオ。チャレンジャーだ・・・。想像するとそれにゃりに怖い。
にゃにはともあれプーニャ株がストップ高でした。すばらしい。
次回、
「夢のクレヨン王国 15月の旅、わん〜〜っ!。 脳みそくすぐっちゃうよ」
♦ ティエ♦ ティエ とりあえずティエがメイン。・・・にゃんだが、どうしても姫様とくっついてる
ので難しい。伽技能は萌えだったが。
ちにゃみに、この絵でどこらへんにそんにゃ首輪が・・・って思ったんだが、あとで拾ったCG
にはちゃんと描かれてるにゃ。細かいエピソードが萌え。
しかしティエonlyエンドは有るんだろうか・・・
♦ ティエ♦ ティエ 1回目の結果はこんにゃ感じ
。2回目以降は魔法が再利用できるので何とでもにゃりそうだが、クエストがこにゃしきれにゃいようにゃので、そこで分岐か。1回目は長かった〜
さすがに放っとくのもの何にゃので、メインの2人は☆を出したが、特にこれと言ったティエの出番は無し。うーむ
あとは羽の人
か・・・