タグ

メモリ管理に関するssm_kariyaのブックマーク (4)

  • releaseすべきところでdeallocをすると - iPhoneアプリ開発ブログ

    iPhoneアプリ開発において、来releaseするところでdeallocをすると当然ながら実行時にエラーが発生します。ただし、エラーが発生するのはdeallocした場所ではなく値を参照した場所となるので注意が必要です。 以下は今回体験したdeallocとreleaseの間違えでエラーが発生してから原因にたどり着くまでの流れです。 次のようなコードを実行したところでエラーが発生しました。 NSMutableArray* anArray = [NSMutableArray arrayWithCapacity: 10]; MyObject* obj = [[MyObject alloc] init]; [anArray addObject:obj];[obj dealloc];//来はrelease id lastObj = [anArray lastObject]; if([last

  • メモリを食いまくるプロセスがメモリ使用量に与える影響をtopで追う

    暴走してどんどんメモリをうスクリプトが OS全体のメモリ使用量(CentOS5 ... カーネルは2.6系になる)の動作にどんな影響を与えるのか ってのを見るために以下のようなテストをしてみました。仕組みはだいたい理解してるけど、細かい数値を追ったことはなかったのでやってみました。 sshでログインして、topを立ち上げる。プロセスを見張る用意をしておく 別のsshをたちあげて、 Perlワンライナーで以下のようなプロセスを走らせる(このプロセスをtopで見張る) # 1秒ごとに5MB単位でメモリをうプロセス # 数値はお好みで perl -e "while(1){ sleep 1; push @h , 1 x 1024 x 1024 x 5 } " ちなみにtopで見張るときは メモリ使用量でソートされるようにして top起動中に shift + o を押して n を押すと 実メモリ

    メモリを食いまくるプロセスがメモリ使用量に与える影響をtopで追う
  • 処理が遅い場合の調査

    処理が遅い場合, 問題が, ディスク I/O, CPU能力, ネットワ−ク, メモリ不足, NFS 等のうちどこにあるかが問題になる.(いや,他にもありうるけど) ディスク I/O や ネットワ−クが問題になることが多いと思う. ネットワ−ク関連では, hosts ファイル や DNS に無登録のマシンだったり, NIS 参照に問題が出ていたり, また, 自分自身でなく NFS サ−バが遅いのが原因の例もあった. 機材の故障やケ−ブル不良で, ネットワ−クに大量のエラ−がでているのが 原因のことも多い. 複数の DNS サ−バを参照しているばあい, DNS サ−バの参照順が適切か考え直してみる. 使用する tool vmstat, free, top, netstat,tcpdump 等は普通に使えると思う. 負荷のモニタは procmeter が気に入っている. ネットワ−クの状況は I

  • Linux のメモリー管理(メモリ―が足りない?,メモリーリークの検出-防止)(Kodama's tips page)

    サ−バ等に使っているPC のメモリが十分かどうか気になる事は多いと思う. 調べ出すと フリーメモリーの不足や SWAP にメモリーがはみだしている様子など 心配な事がいろいろでて来る. PC の動作が遅くなる原因は様々な要因が絡み合っているので, 表面に現れた症状だけでは効果的な対策が分からない事もある. 以下では, メモリ−関連にしぼって解説する. メモリの状況を調べる メモリ−は十分なはずなのに 余裕が無い? どのプロセスがメモリを消費しているのか? メモリーのリークを検出する方法? 防止する方法? メモリ−は十分なはずなのに SWAP を使ってる? じゃ, 当のメモリ−不足はどうしたら分かるの? メモリーと SWAP 領域はどのくらい確保すると良いのか メモリの状況を調べる メモリの利用状況を調べる方法は, free, top, ps, vmstat, /proc/meminfo

  • 1