ふらっと C#,C♯,C#(初心者用) Part154at TECHふらっと C#,C♯,C#(初心者用) Part154 - 暇つぶし2ch■コピペモード□スレを通常表示□オプションモード□このスレッドのURL■項目テキスト300:デフォルトの名無しさん 22/03/22 21:53:03.08 0A7XAa2y0.net >>291 スコープを外れたときに自動的にDispose()が呼ばれるから問題ないってことなんだが。 301:デフォルトの名無しさん 22/03/22 22:22:58.92 1zUmccnld.net >>288 お前はメモリとかリソースの管理を他の言語でどうしてるかもっと勉強するべきだ C/C++がユーザーに全部丸投げしてるのがいい加減辛いので言語側が管理すればいいんじゃね?ってのがGC。 GCの方式で主流なのは参照カウント方式とマークアンドスイープ方式。 参照カウント方式は循環参照(this._obj=this)があると回収されないから、 C#多少大きめのコストを支払ってでもマークアンドスイープ方式にした。 リソース解放のタイミングをコントロールしたけりゃIDisposable使え 解放漏れの保険でファイナライザ使え https://ufcpp.net/study/csharp/rm_disposable.html C#1.0のリリースが2002/02だから当時はそれでも充分だったんだろう 302:デフォルトの名無しさん 22/03/22 22:39:21.44 Ky9cYioTM.net そもそもC#は「デストラクタなぞ使うべきではない」っていう思想だし それゆえにリソースの解放はデストラクタではなくDispose()で行う (万一Dispose()を呼び忘れた場合に備えて>>291の実装でデストラクタで救済するけど、これも パフォーマンス上好ましくないんでDispose(bool disposing)みたいなDisposeパターンの書き方で処理を最小化する) って方針で首尾一貫してるんだけどさあ その方針にケチつけてデストラクタがクソだのIDispose確認がメンドクサイだの言ってる人たちのほうがおかしいだけなんだよ >>273が 「話の本質わかってなくて草生える」 とか書いてるけどまさにそのとおり 次ページ最新レス表示レスジャンプ類似スレ一覧スレッドの検索話題のニュースおまかせリストオプションしおりを挟むスレッドに書込スレッドの一覧暇つぶし2ch