[過去ログ] ふらっと C#,C♯,C#(初心者用) Part154 (1002レス)
上下前次1-新
抽出解除 必死チェッカー(本家) (べ) レス栞 あぼーん
このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
282(1): デフォルトの名無しさん (スップ Sd73-2DeC) [sage] 2022/03/22(火) 19:49:04.13 ID:1zUmccnld(1/3) AAS
GC(マークアンドスイープ)+FinalizeとDisposeの相性が悪いだけだろ
C#に限った話じゃない
291(3): デフォルトの名無しさん (スップ Sd73-2DeC) [sage] 2022/03/22(火) 21:41:21.16 ID:1zUmccnld(2/3) AAS
>>287ref class C{
~C(){} // Destructor
!C(){} // Finalizer
};
のコンパイル結果が
// C# DLL
class C:IDisposable{
Dispose(); //Destructor???
~C();//Finalizer
}
であることをご存知でない?
296: デフォルトの名無しさん (スップ Sd73-2DeC) [sage] 2022/03/22(火) 22:22:58.92 ID:1zUmccnld(3/3) AAS
>>288お前はメモリとかリソースの管理を他の言語でどうしてるかもっと勉強するべきだ
C/C++がユーザーに全部丸投げしてるのがいい加減辛いので言語側が管理すればいいんじゃね?ってのがGC。
GCの方式で主流なのは参照カウント方式とマークアンドスイープ方式。
参照カウント方式は循環参照(this._obj=this)があると回収されないから、
C#多少大きめのコストを支払ってでもマークアンドスイープ方式にした。
リソース解放のタイミングをコントロールしたけりゃIDisposable使え
解放漏れの保険でファイナライザ使え
外部リンク[html]:ufcpp.net
C#1.0のリリースが2002/02だから当時はそれでも充分だったんだろう
上下前次1-新書関写板覧索設栞歴
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル
ぬこの手 ぬこTOP 0.152s*