[表示 : 全て 最新50 1-99 2chのread.cgiへ]
Update time : 10/13 04:41 / Filesize : 22 KB / Number-of Response : 97
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

GCは失敗。メモリは自分で管理せよ!



1 名前:デフォルトの名無しさん mailto:sage [2014/10/11(土) 09:13:40.71 ID:mzO+gdRv]
GC、ガベージコレクション、ガベージコレクタ、ガーベジコレクション、ガーベジコレクタは使えない。
以下GCと記す

プログラマをメモリ管理から開放する!
といいつつ、メモリリーク問題の文献が大量にある。
これすなわち、メモリリーク問題が全然解決していないということ。
さらに、メモリ解放のタイミングの文献まで大量に生み出した。
これすなわち、新たなるメモリ管理に関する問題を生み出したということ。

malloc、freeじゃないが
結局のところ、メモリを管理するという技術は、今しばらくは、身につける・教える・学ぶべきではないだろうか?
使って、そのまま放置しても、基本的にはGCがなんとかしてくれている。
ランジョブからジョブ終了までさほどの時間を要さない。メモリも大して使わないならいいだろう。
しかし、規模が大きくなり常駐ジョブやメモリ大量使用のジョブになってくると、そんなメモリ管理の方法でやっていると、
上記「文献」を生み出されてしまう。

入門時は、メモリに無頓着でもいいだろう。それよりも、目的を達成することが先決だ。
しかし、慣れてきたら、やはりメモリの管理まで余裕を持って自分で行うべきだろう。

87 名前:デフォルトの名無しさん mailto:sage [2014/10/12(日) 23:01:07.26 ID:yWo9u0cs]
>>82
GC言語でリソースの解放タイミングが保証されないのは、別に
循環参照に限った話じゃないと思うが。

88 名前:デフォルトの名無しさん mailto:sage [2014/10/12(日) 23:05:39.92 ID:sv4A2Uaz]
まあ、適材適所なんだけどね
GC は勝手にやらせとくと色々予測できないし、ちゃんと制御しようとすると面倒なことになって本末転倒だったりする
結局スクリプトとか C# で作るツールとかの小規模なプログラムでしか使ってないや

89 名前:デフォルトの名無しさん mailto:sage [2014/10/12(日) 23:19:48.88 ID:K67PydJN]
>>87
いやまあ言いたいことは同じなんだけど。
ヒープみたいに、lazyに解放すればいい
リソースなんて少数派な位なのに
ヒープだけを特別扱いしてリークしづらく
しているのがGCで、逆に他のリソースの
解放に関しては糞の役にも立たない。

頑張って使いやすくしても
try with resourcesみたいなのが精々

90 名前:デフォルトの名無しさん mailto:sage [2014/10/12(日) 23:20:37.56 ID:Du/HgjiN]
単純に速度が必要でメモり欲しいループの前でsystem.gc()すりゃいい

91 名前:デフォルトの名無しさん mailto:sage [2014/10/13(月) 00:36:28.02 ID:XlHNUUuP]
>>89
> 頑張って使いやすくしても
> try with resourcesみたいなのが精々

言い方がひねくれてるだけで、
使いやすくなってるんだろ?

100% じゃなくても90%なら0%よりもはるかにいいし。
君、完璧主義かい? 完璧じゃなければ0の方がいい。
命を完全に守れないなら、安全装置はいらない。

92 名前:デフォルトの名無しさん mailto:sage [2014/10/13(月) 01:50:00.34 ID:qVWnI3+v]
シートベルト装着義務違反 減点1

93 名前:デフォルトの名無しさん mailto:sage [2014/10/13(月) 02:14:43.55 ID:Sk2z4NAD]
そもそも管理の観点が違うものをリソースとかそういう言葉で一括りにしていいもんなのかなぁ
別にGCとRAIIが必ずしも互いに排他的なものでも無いだろうし

94 名前:デフォルトの名無しさん mailto:sage [2014/10/13(月) 02:52:33.01 ID:Y+iyP5NT]
参照してるから解放されないのであって、使ってない物は
参照しないようにする=null入れるだけの話だろ。

95 名前:デフォルトの名無しさん mailto:sage [2014/10/13(月) 02:57:40.58 ID:2n2KRb08]
>>93
Unixなんか、リソースは何でもファイルですよ?

これが抽象化というもの。



96 名前:デフォルトの名無しさん mailto:sage [2014/10/13(月) 03:02:03.17 ID:jfB1gY05]
>>94
OS側から勝手に参照し続けるKindleという機種がありましてな…。






[ 新着レスの取得/表示 (agate) ] / [ 携帯版 ]

次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧](*・∀・)<22KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef