[過去ログ]
GCは失敗。メモリは自分で管理せよ! その2©2ch.net (720レス)
GCは失敗。メモリは自分で管理せよ! その2©2ch.net http://mevius.5ch.net/test/read.cgi/tech/1447856699/
上
下
前
次
1-
新
通常表示
512バイト分割
レス栞
このスレッドは過去ログ倉庫に格納されています。
次スレ検索
歴削→次スレ
栞削→次スレ
過去ログメニュー
6: デフォルトの名無しさん [] 2015/11/19(木) 08:58:13.78 ID:JIJtk7D/ ブラッド・コックスとトム・ラブがObjective-Cを作り「この言語はCのメモリ安全性とSmalltalkの高速性を合わせたものだ」と宣言する。 現代の歴史家は2人が失読症ではないかと疑っている。 https://twitter.com/okdshin/status/666903312151613440 http://mevius.5ch.net/test/read.cgi/tech/1447856699/6
7: デフォルトの名無しさん [sage] 2015/11/19(木) 23:17:01.16 ID:SYMznuBH 519 :名無し~3.EXE:2015/11/19(木) 21:49:08.84 ID:CEKgHuEl 他のアプリを使用しながらSleipnirを使う メモリー不足でのメッセージは良心的 https://i.gyazo.com/57e93e426e7a2b5fe7ba4dcf19a432c8.png 問題点として、場合によってはメモリー不足で メッセージされずに展開されなくなる Sleipnirが不安定で信頼感を得られない要因 520 :名無し~3.EXE:2015/11/19(木) 21:51:47.06 ID:CEKgHuEl 6で書き込み欄が展開されなくなった・・・再起動してカキコした 521 :名無し~3.EXE:2015/11/19(木) 21:52:39.96 ID:CEKgHuEl ◆重要◆Sleipnirが不安定で信頼感を得られない要因 http://mevius.5ch.net/test/read.cgi/tech/1447856699/7
8: デフォルトの名無しさん [sage] 2015/11/19(木) 23:18:18.19 ID:SYMznuBH 525 :名無し~3.EXE:2015/11/19(木) 22:13:05.49 ID:CEKgHuEl 展開されない時 リロードで展開される場合もあるが リロードで展開ない場合もある http://mevius.5ch.net/test/read.cgi/tech/1447856699/8
9: デフォルトの名無しさん [sage] 2015/11/20(金) 09:27:53.75 ID:em+ldceb メモリ管理は自分でやった方が漏れが出るでしょ 規模がでかくなればなるほどリスクが大きくなる http://mevius.5ch.net/test/read.cgi/tech/1447856699/9
10: デフォルトの名無しさん [] 2015/11/20(金) 15:32:07.18 ID:hg0nWx/i C#の基本は自動だけど部分的に手動にできるハイブリッドがいいと思うよ 確保量の大きい画像なんかを扱っているとどうしても手動で解放したいタイミングもあるし http://mevius.5ch.net/test/read.cgi/tech/1447856699/10
11: uy ◆Qawu9.2l1E [sage] 2015/11/20(金) 20:28:57.10 ID:QlSu2hgW まともな言語ならオプションくらいついてる http://mevius.5ch.net/test/read.cgi/tech/1447856699/11
12: デフォルトの名無しさん [sage] 2015/11/20(金) 22:40:56.83 ID:h5Le2W6O >>10 それが理想的だけど、C#ってそんなことできたっけ? http://mevius.5ch.net/test/read.cgi/tech/1447856699/12
13: デフォルトの名無しさん [sage] 2015/11/21(土) 09:07:54.65 ID:+qGvO8oq >>12 出来るよ。 ポインタも使える http://mevius.5ch.net/test/read.cgi/tech/1447856699/13
14: デフォルトの名無しさん [sage] 2015/11/21(土) 10:29:39.51 ID:7nxNhgSu 調べてみたけどよくわからんな。 もしかしてアンマネージなメモリを確保してデータ領域に使う話? http://mevius.5ch.net/test/read.cgi/tech/1447856699/14
15: デフォルトの名無しさん [] 2015/11/21(土) 16:16:49.90 ID:iOucF00Z アンwwwwマネージwwww 無理に横文字使わなくていいですよwww http://mevius.5ch.net/test/read.cgi/tech/1447856699/15
16: デフォルトの名無しさん [sage] 2015/11/21(土) 17:40:45.99 ID:7nxNhgSu 横文字じゃなくてマイクロソフトの用語なんだが? http://mevius.5ch.net/test/read.cgi/tech/1447856699/16
17: デフォルトの名無しさん [sage] 2015/11/21(土) 17:47:25.64 ID:/uyrLxeD c#が残念なんのはC++とデストラクタの呼ぶれるタイミングが違いすぎて移行が大変すぎることだ。 結局、手動でデストラクタを呼ばなきゃならない。GCの利便性がほとんどなし。 http://mevius.5ch.net/test/read.cgi/tech/1447856699/17
18: デフォルトの名無しさん [] 2015/11/21(土) 19:18:42.53 ID:iOucF00Z >>16 涙ふけよwwww http://mevius.5ch.net/test/read.cgi/tech/1447856699/18
19: デフォルトの名無しさん [] 2015/11/21(土) 21:36:26.09 ID:tqUpuiXF >>9 自動ならメモリリーク等々発生するわけがないのに発生している この原因はプログラマなんだけど、結局メモリ管理から解放されてないなら最初から管理する方針でいいじゃん http://mevius.5ch.net/test/read.cgi/tech/1447856699/19
20: デフォルトの名無しさん [] 2015/11/22(日) 01:48:28.16 ID:7AflF1fM メモリ管理を楽にするためにあるわけで人間が全部面倒みんのとは違うだろ http://mevius.5ch.net/test/read.cgi/tech/1447856699/20
21: デフォルトの名無しさん [] 2015/11/22(日) 04:41:20.06 ID:WFE6EpHf やっぱりGCのほうがいいかな大規模になってくると Cでリークはしてないけど本来開放すべきタイミングで開放してないでメモリいっぱいになるのは防ぎやすいと思うし http://mevius.5ch.net/test/read.cgi/tech/1447856699/21
22: デフォルトの名無しさん [] 2015/11/22(日) 07:04:28.69 ID:MUaNGGyB >>20 楽になってメモリリークがなくなるならいいけど、メモリリーク発生するわ プログラマがメモリ管理なんてしなくて大丈夫、とメモリの扱いが雑になって意図しないタイミングで解放されたりされなかったり 最初から管理するという方針で教えないから、こんなことになる 管理漏れをGCがうまいことやってくれる。でもGCにやらせるようだと恥。 というくらいで教育すべき http://mevius.5ch.net/test/read.cgi/tech/1447856699/22
23: デフォルトの名無しさん [] 2015/11/22(日) 07:12:51.89 ID:MUaNGGyB メモリ管理すらまともにできないやつが寿命や世代やら管理できるわけがない。 http://mevius.5ch.net/test/read.cgi/tech/1447856699/23
24: デフォルトの名無しさん [sage] 2015/11/22(日) 10:54:50.51 ID:MJCWCZ10 GCそのものではなく新人教育や解説書が最初のスタンス間違えたんだよ。 GC=メモリ管理適当 という認識作ったから、GCに新しい名称つけて 教育や解説書では、メモリーの確保から解放まできちっと説明し直したほうがいい http://mevius.5ch.net/test/read.cgi/tech/1447856699/24
25: デフォルトの名無しさん [sage] 2015/11/22(日) 12:31:51.68 ID:Qlq25ltW GCって完全なものだと思ってたから、C#案件でメモリリークの調査にえらく手間がかかった GCはダメな子って認識は必要だな http://mevius.5ch.net/test/read.cgi/tech/1447856699/25
26: デフォルトの名無しさん [sage] 2015/11/22(日) 12:38:37.22 ID:mfzN9aoV C/C++はライブラリレベルでメモリリリークの検査もテストも書けるけど GC前提言語だとその辺がごっそり抜け落ちて後で問題になる http://mevius.5ch.net/test/read.cgi/tech/1447856699/26
27: デフォルトの名無しさん [sage] 2015/11/22(日) 12:42:49.74 ID:zNwKjU3u メモリ管理できない人がお気楽で作れば、GCあっても・・・・ http://mevius.5ch.net/test/read.cgi/tech/1447856699/27
28: デフォルトの名無しさん [sage] 2015/11/22(日) 13:08:14.89 ID:KDgQ57Ye >>25 結局どんなバグだったんだい? http://mevius.5ch.net/test/read.cgi/tech/1447856699/28
29: デフォルトの名無しさん [sage] 2015/11/22(日) 16:57:06.63 ID:vggKhYqJ C++でもスマートポインタ使えば勝手に開放されるよ 所謂GC任せだと、いつ開放処理が走るか分らなくなるから その事に対する新たな対策が必要になるよ http://ufcpp.net/study/csharp/rm_disposable.html 手続き型言語は処理の順番が重要なのに いつ実行されるか分からないってのは中々チャレンジャーだし大掛かりな話だね http://mevius.5ch.net/test/read.cgi/tech/1447856699/29
30: デフォルトの名無しさん [sage] 2015/11/22(日) 17:32:48.70 ID:vggKhYqJ 前スレでも書いたけど、C#のDisposeの問題を紹介しよう IDisposableなオブジェクトをコンポジションしてメンバに持つと自身もIDisposableにしなければならない だから自分がコンポジションしているオブジェクトがIDisposableかどうか一々調べなければならないし IDisposableなオブジェクトがメンバにあれば、自身もIDisposableにしなければならない さらに、その作ったクラスをコンポジションして使うクラスもIDisposableにする必要があり・・・ という風にIDisposableはクラスで閉じずコンポジションで伝染する というか、むしろ手動で伝染させなければならないという しかもIDisposableの一連のイディオムはとても長くて煩雑 http://ufcpp.net/study/csharp/rm_disposable.html こういうものを書いて、マネッジドリソースとアンマネッジドリソースで場合わけをしつつ IDisposableなオブジェクトに関しては 手動で自分のメンバのDisposeを漏れなく呼び出すコードを書かなければならない 当たり前だが、どのメンバがIDisposableか完全に把握しておく必要が有る 手動で自分のメンバのDisposeを呼び出す作業は、まるでCのmallocを思い起こさせる 問題点は明確で、DisposeがC++のデストラクタのように芋づる式に勝手に呼ばれない事に有る だから手動で芋づる式に呼び出すコードを書かなくてはならない http://mevius.5ch.net/test/read.cgi/tech/1447856699/30
メモ帳
(0/65535文字)
上
下
前
次
1-
新
書
関
写
板
覧
索
設
栞
歴
あと 690 レスあります
スレ情報
赤レス抽出
画像レス抽出
歴の未読スレ
AAサムネイル
Google検索
Wikipedia
ぬこの手
ぬこTOP
0.022s