1 :
仕様書無しさん :
01/10/13 11:38 malloc & free ここでとことんやれ。
2 :
仕様書無しさん :01/10/13 11:46
malloc() じゃないけど fopen() したら fclose() しないとだめ? if ((fp1 = fopen(filename1, mode)) == NULL) exit(1); if ((fp2 = fopen(filename2, mode)) == NULL) { fclose(fp1); /* fp1 のクローズは必要? */ exit(1); }
3 :
仕様書無しさん :01/10/13 12:31
ファイルをオープンしたら必ずクローズしなさいよ。 By.COBOLER
5 :
仕様書無しさん :01/10/13 15:39
OSによってはいるんじゃないの? よくわからんけど。
6 :
仕様書無しさん :01/10/13 15:51
>>5 VC6 ソースを読んでみたけど、こいつは main から抜けた後で __endstdio() @ _FILE.C
関数を呼び出して、バッファに残っているデータを書き出している。だから
fopen();
fwrite();
exit();
// fclose() しない
これでも fwrite() で書き出したデータがバッファに残らずに、きちんとファイルに書き出
される。
標準 C の範囲でどうなってるのかは知らないけど、ANSI C には atexit() 関数がある
以上 main 後に後始末するのが不可能な理由は思いつかんな。もちろん abort() した
ときはダメだが。
7 :
仕様書無しさん :01/10/13 16:01
>>5-6 どうせ結論はその辺からでてくんだろ?
freeしないと、OSによっては通常はOKだがだめなケースがあるとか。
アプリの不出来をOSに押し付ける事がそんなに楽しいか?
箱呼んでこい箱!
>>7 よく分からんが free() しないアプリケーションは「不出来」で、OS によってはリーク
すると言いたいのか?
その論争はさんざんやって結論出てるから、もういいって。
よくわからんのだけど、freeを使わずにプログラムを終了する事がメリットがあるのか? つーか、こんな馬鹿なプログラムを書いて喜ぶ奴とは気があいそうにないな。
>>10 箱じゃないんだから、定期的に話題をループさせるなよ。。。
> よくわからんのだけど、freeを使わずにプログラムを終了する事がメリットがあるのか?
free するにはコスト(実行時コストならびにプログラマが正しく free するコードを書くコスト、
また free できるようなデータ構造を作るコスト)がかかる。free するメリットとコストを秤
にかけて、より良い方を選択すれば良いだけ。
詳しくは前に別スレッドでさんざん議論されてるから、そっち読んでくれ。
>>11 そういう不毛な論争をまたするって趣旨のスレじゃないの?
13 :
仕様書無しさん :01/10/13 23:03
for (;;) { p = malloc(size); /* 解放していない */ /* process... */ } こんなツールがデーモンとしてメールサーバで動いています。 対策としてクーロンで毎日リブートするように仕込んであります。 会社の組織となるとこんなレベルに合わせなくてはならない。
14 :
仕様書無しさん :01/10/13 23:33
cronをどう読めば「クーロン」になるのか…。
16 :
仕様書無しさん :01/10/13 23:51
くりおん
>>1 なんや、新しいニュースグループできたんか思たで。
[cron] (UNIXコマンド) <くーろん> <くろん> "clock daemon" のこと。名前の由来はよくわからないが、 "Command Run ON"の略か、時を表す接頭辞 "chrono-" から きているという説がある。
クーロンなんて誰が言い出したんだろね。
daemon は だえもん だよな?
>>13 そりゃあ、ぜったいに解放しなきゃダメなケースだよな。とりあえず Boehm GC
使っとけば?
25 :
仕様書無しさん :01/10/14 08:39
結局のところメモリリークって
>>13 のようなデーモンプログラムに
発生するのが一般的だと考えてよろしいですか?
>>25 よくないです。
エディタなんかでも、反復的に繰り返される処理で解放を忘れると、メモリを食いつぶ
します。
27 :
仕様書無しさん :01/10/14 12:57
>>13 ウソだぁ。ウソだろ?
こういう論争って、最後に解放するかしないか(OSに解放任せるとか)ってことだろ?
あからさまにメモリ食いつぶすようなループン中で使うわきゃないだろ?
29 :
仕様書無しさん :01/10/14 14:55
ループン中age
るーぷんソースsage
31 :
仕様書無しさん :01/10/14 18:47
ルーブルン美術館age
早くもクソスレの予感(苦笑)
>>32 fj 本家の方で箱氏に暴れてもらわないことには、やはり盛り上がりに欠ける
よね(苦笑
そういえば fclose() の件、誰か規格書調べた人いる?
東洋海亀ってまだいるのかな?
>亀近況
Naoya Kinjo の名義でならたまに投稿してるようです。
旭川のお婆さんだとか30万の投資用の変な箱で
喜んだりとかの往時の暴れっぷりは見られませんが。
きっと utopia.* の僭主気取りで
充足しちゃったんじゃないですか?
>>33 鶴田氏となにやらやりあってるようですが、
誤引用から文脈を読み取れなくなってるレバルじゃ
議論にもなってないし…
Message-ID: <
[email protected] >
ループンage なんか可愛くて(・∀・)イイ!!
最近、fjより2chのがレベルが高い気がしてきたYO 2chなら糞な意見は無視されず、徹底的に叩かれるし。
>>37 糞な意見は無視するのが正解。もしその糞な意見が煽りだったら、
そのスレッド全体が荒れてしまう。
2ch にしろ fj にしろ、性質が違うメディアを並べてレベルを語る
君は頭が弱い。
# ↑ は煽り入っている。こういうのは無視しろってこと。
煽りくらいでスレが荒れるようなら、元の話題が煽りと遊ぶよりも つまらなかったってこった。
正直、だえもんのこと「であもん(deamon)って書いてた。