ここでは、Cにコンパイルされたアセンブリにガベージコレクション言語があるとします。では、Cにコンパイルされたときのガベージコレクションの仕組みは?それは完全に決定的になりますか?または、それは定期的に実行され、ゴミを収集する別のプログラムとして、結果のプログラムに含まれていますか?これはたぶん愚かではないにしても非常に簡単ですが、いくつかの説明が必要でした。Cコンパイル言語でのガベージコレクション
0
A
答えて
0
コンパイルされた言語で同様のことを行う方法の1つは、iOSのARC reference countingで行われます。それは技術的にガベージコレクションではありませんが、似たようなものです。メモリを解放するかどうかを確認するために、ヒープを指し示して割り当てられたアドレスを定期的にプログラムメモリで検索する必要があります。
0
Bohem gcが存在します。ただし、デッドオブジェクトへのポインタになるように正しい範囲に整数がある場合、グラフ全体が漏れる可能性があります。 http://hboehm.info/gc/すべてが悪い選択です。
1
C言語にコンパイルしていても、そのような実装は通常、元の言語のランタイムライブラリにリンクします。そのライブラリには、より高いレベルの言語データ用のガベージコレクタが含まれています。 C言語で元の言語のデータを表現するために使用されるデータ構造には、ガベージコレクタに必要な追加フィールドが含まれています。
彼らが使用するかもしれない別のテクニックはconservative garbage collectionです。
関連する問題
- 1. 関数言語をC言語にコンパイルする
- 2. どの言語でC#をコンパイルしました
- 3. コンパイルされた言語やスクリプト言語が好きですか?
- 4. shにコンパイルする言語
- 5. C言語でのツイストオルタナティブ
- 6. C言語:リンクリスト
- 7. C言語ビットトリック
- 8. C言語、」、
- 9. コンパイルされたコンパイル済みのプログラミング言語は何ですか?
- 10. C言語のイテレータ
- 11. C言語のメモリデバッガ
- 12. C#の - DOT言語
- 13. ゲームボーイC言語のプログラミングC
- 14. 最高のWin32コンパイル済みスクリプト言語?
- 15. Windows版GLUTヘッダ付きC言語プログラムをコンパイルする(Linux版)
- 16. C++ではなくC言語のオブジェクトファクトリ
- 17. C言語で現在の言語を取得する
- 18. C言語でAndroidプログラミング
- 19. Vala(C#のような言語)がCにコンパイルされますか?
- 20. C言語とHaskell
- 21. PHPにコンパイルするプログラミング言語?
- 22. C言語でWordNetライブラリを使用するプログラムをコンパイルする際のエラー
- 23. C言語の*の意味
- 24. C言語のprintfフロートエラー
- 25. C言語のカラー出力
- 26. C++のような言語
- 27. C#(言語のみ)コンパイラ
- 28. C言語、ファイルの構造
- 29. C言語のPOSIXスレッド
- 30. C言語のstrcat関数
「コンパイル済み」とはどういう意味ですか? – jdarthenay
nimがガベージコレクションされていることを正しく覚えていれば、C、またはnimの実装にコンパイルするようなスキームの実装。 – meguli
Cコードが生成されているとよく分かりますか?その場合、誰も答えを知っていないなら、おそらく、非常に単純なプログラムの生成されたCコードを見てみることができます。 – jdarthenay