JAVA(Android)のメモリ管理
"また、Reference オブジェクトそのものは回収されないことにも注意したい。これは WeakReference も SoftReference も同じだけども。" っておいまて
2011-09-18 16:43:17さっき上げたページのSoftReferenceの例で、もしGCされちゃった後に他からどっかlistの要素に対してアクセスがあった場合ってどうなるんだろ・・・って思ったら書いてあった。nullだ。 http://t.co/Wp1QaRWc
2011-09-18 16:48:01@k_katsumi キャッシュのためにWeakHashMapってのがあるみたいなんで、それでもういいと思います。俺も多分使いませんし気にすることはなさそうです。単に今見てるのは主に勉強のためかな
2011-09-18 16:48:52SoftだとGCされてWeakだとGCされない理由はこれだろうな。でもWeakでなんでSweepされないんだろ。もう参照ないじゃん。うーむ。
2011-09-18 16:50:17http://t.co/I4dsvIiE これ詳しいな。Softは完全にGCが勝手に判断するのか!すげー!Weakは理屈の上で参照が尽きたら消えると。
2011-09-18 16:53:28http://t.co/I4dsvIiE これ死ぬほど分かりやすい!すげぇ!PhantomってのはいわゆるNSZombieみたいな奴なんだな。
2011-09-18 16:55:15後知りたいことは一対多・多対多の通知の仕方と、内部クラスのインスタンスが親クラスのインスタンスに対してどういう風に参照持ってるんだってのを知りたい。
2011-09-18 16:58:11ってさっきのブログ小野和俊(lalha)さんじゃないか。もうこの記事だけであの人がどれぐらいヤバイわかってる人か良く理解できた
2011-09-18 16:59:12ブログでもTwitterでも技術話全然しないんだもんあの人。ブラ三とミスコンの人と思ってるぐらいだが、たまに技術記事を書いたらこれか
2011-09-18 17:00:00要するに内部クラスのあるアウタークラスは内部クラス分のデータももてるインスタンスなわけだ。なるほどね。
2011-09-18 17:05:33すっきりさっぱり理解できた。そうかーなるほど。これ頭いい仕組みだな—。「インスタンスを共有」か。中身は同じものなんだな。へーすげー
2011-09-18 17:06:25ん、まて、匿名クラスの場合はどうなるんだ?外側を参照できるぞ?これはさっきのインスタンスを共有しているという考えではうまくいかなくないか?
2011-09-18 17:09:50http://t.co/RzdO4RRv 答えが書いてあった。匿名クラスは局所クラスの一種。局所クラスは内部クラスの一種。内部クラスは外部のクラスとインスタンスを共有する。なるほど。
2011-09-18 17:14:29したがって匿名クラスも大本の親とインスタンスを共有しているから、その中身に触れることができる。OK。問題なくなった。
2011-09-18 17:14:58Android的に言おう。あるActivityにWebViewがあり、WebClientを作りたい。ここでWebClientを匿名クラスで実装しようがActivityの内部クラスで実装しようが、結果としてはActivity自身のインスタンスをWebClientに渡してると。
2011-09-18 17:16:21AndroidのActivity, Application, Viewがどのような参照になっているかを記述してある書物とかある?
2011-09-18 17:25:59