[過去ログ] GCは失敗。メモリは自分で管理せよ! その2©2ch.net (720レス)
前次1-
抽出解除 レス栞

このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
83
(1): デフォルトの名無しさん [sage] 2015/11/28(土) 20:47:03.48 ID:03HlMXbm(1) AAS
話は変わるんだがスマートポインタのメリットって何?
コンストラクタで例外投げたとき
そこまでに初期化したメンバ変数のデストラクタを呼ぶため
みたいなのは聞いたことあるけどそれくらいのもん?
305: デフォルトの名無しさん [sage] 2015/12/20(日) 12:21:54.48 ID:ofrSOHxv(2/7) AAS
つかこの世はうつろうもののであって、物理的ハードウェアでプログラムを実行する限り、
計算モデルは明らかに状態遷移ベース(チューリングマシン)の方に分がある
GCとかチューリングマシンで無理矢理関数型プログラミングを行うためのつなぎの技術、
いわば邪道
どんだけ蛇が出てくるか、GCの方がかえってわからん
309
(1): デフォルトの名無しさん [sage] 2015/12/20(日) 14:28:20.48 ID:i39XsMQ2(1/5) AAS
>>308
308(5): デフォルトの名無しさん [sage] 2015/12/20(日) 14:03:49.29 ID:ofrSOHxv(3/7) AAS
>>306
>>304の例で、さらにCを上書き更新したいオブジェクトDがいたらどうすんの?
GCがA、B両方開放してくれるまでDは期限不定で待たされるけどそれが>>306的に良い設計なの?

つまり、ハードウェアリソースの有限性を考慮する限り
>使い終わったという言葉が示す通り使い終わったならどうなろうが知った事ではない
が常に成立はしないという話
そんなあっちこっちから同時にリソース掴みに行く設計が悪いって最初からわかってて言ってるんだろ?
意見を否定するためだけの極端な反例(この場合は例にすらなっていないが)を引き合いに出すのは不毛だよ
317: デフォルトの名無しさん [sage] 2015/12/20(日) 14:55:30.48 ID:ofrSOHxv(7/7) AAS
ていうか>>316
316(1): デフォルトの名無しさん [sage] 2015/12/20(日) 14:51:52.93 ID:i39XsMQ2(3/5) AAS
だから同時に書く設計が悪いんだって
気合入れて設計を見直してみろ
そんな必要はないってわかるから
の言っていることはますます矛盾で、
>同時に書く設計が悪い
>そんな必要はないってわかる
というのは明白に「書き込みの順序を設計できる」ということを言っていて、
それはその通り(チューリングマシンの計算モデルに合致する)ので別段漏れの立場と対立するものではなく、
かつ気合を入れて設計すれば順序で全て解決する(GCは不要である)という言明でもある
320: デフォルトの名無しさん [sage] 2015/12/20(日) 17:05:42.48 ID:6vo8OCaj(1/3) AAS
>>319
319(1): デフォルトの名無しさん [sage] 2015/12/20(日) 15:20:28.11 ID:i39XsMQ2(4/5) AAS
>>318
彼は敵対意見に反論する材料が欲しいというだけで変な例をでっち上げて出してしまったんだ
本人も今頃困ってるんじゃないかな
>>308を変な例変な例というばかりでGCを用いた正しい解決方法が一向に示されない件について:
繰り返しになるが、>>308のオブジェクトDのケースはどう解決すんのさ…
たとえ変でも反例は反例だし
>>308のリソースCがファイルなのだとしたら、病的な反例というほど例外的想定でもない

読み書き順序の設計の必要性(破壊的代入前提のプログラミング)を口にしつつ
>使い終わったという言葉が示す通り使い終わったならどうなろうが知った事ではない (>306
306(3): デフォルトの名無しさん [sage] 2015/12/20(日) 13:48:14.94 ID:HXRBhwTH(2/3) AAS
>>304
設計が悪い
使い終わったという言葉が示す通り使い終わったならどうなろうが知った事ではない
知らなきゃ困るような設計にしたのが間違いだね

と言い切ることはできないとかそういう話

で、現実のハードウェアは破壊的代入前提のブツばかりであるという、(>306)

>>318
318(2): デフォルトの名無しさん [sage] 2015/12/20(日) 15:17:45.93 ID:14eB8c4R(1) AAS
>>315
もはやGCがどう関係するのかわからない
ウィンドウシステムでの描画は一般に裏VRAMに描いてハードウェアでBitBlt転送するが
裏VRAMに書く際のデバイスコンテキストが複数使えるが数に限りがある場合…
とか細かい話をしても通じないようならリソースCをファイルと考えてくんな
337: デフォルトの名無しさん [sage] 2015/12/21(月) 06:17:26.48 ID:ejqZ3DMD(9/26) AAS
残念だがスリープだ!  
画像リンク
画像リンク

384: デフォルトの名無しさん [sage] 2016/02/13(土) 22:32:48.48 ID:6Xm9VASh(1) AAS
GCがある言語でRAIIみたいな事したいのなら
loan patten使えばいいだけでは
447
(2): デフォルトの名無しさん [sage] 2016/03/28(月) 00:39:52.48 ID:2h3yopdG(1) AAS
{
std::shared_ptr<my_namespace::my_class> p(new my_namespace::my_class(...));
/* unko_code */
}

using(var obj = new MyClass(...)) {
/* GoodCode */
}

美しいという事はいい事だね
C#は書いてある事がシンタックス的にもセマンティック的にも明確だ
リソース管理はこうでなければならない
455
(1): デフォルトの名無しさん [sage] 2016/04/12(火) 23:15:42.48 ID:ZWvwh7J9(1) AAS
Rust使えばいいのさ
508: デフォルトの名無しさん [sage] 2016/04/22(金) 15:49:44.48 ID:+Z1ZyILi(2/2) AAS
学校の先生にそう教わったんですね
657: デフォルトの名無しさん [sage] 2017/09/13(水) 08:52:01.48 ID:Vaq5SeW/(1) AAS
アロケータ置き換えるだけでは普通解決しないでしょ
>>655
655(1): デフォルトの名無しさん [] 2017/09/13(水) 05:10:44.22 ID:t818hmCa(1) AAS
でも実際スマホアプリ作ってんのにフラグメンテーションを防ぐ為に最初に使用する分全部確保しておいて、その中で割り当てするんだーとかいって、オレオレアロケーター作ろうとする頭の悪いやつがいて困る。
逆にお前の作ったそのアロケーターの中でフラグメンテーションして枯渇するわと。
こそが置き換えて何するのか理解できてない気がする
前次1-
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル

ぬこの手 ぬこTOP 0.045s