言語環境は、メモリー管理ユーティリティー関数を用いて、Net.Data が所有する記憶域を割り当て、 Net.Data 実行時ライブラリーを用いて割り当てた記憶域を解放します。
以下の例で、これらのユーティリティー関数の必要性を説明します。
Net.Data が、コンパイラー A とその対応する実行時ライブラリーを用いて作成されているものとします。
プログラマーが、新しい言語環境を作成しますが、
実行時ライブラリーが異なるコンパイラー B を使用するものとします。
2 つの実行時ライブラリーの間に互換性がない可能性があるため、
言語環境は Net.Data が割り当てた記憶域を解放できず、
Net.Data は言語環境が割り当てた記憶域を解放できません。
ユーティリティー関数 | 説明 |
---|---|
dtw_malloc() | dtw_malloc() を用いて Net.Data の実行時ヒープから記憶域を割り当てます。 |
dtw_free() | dtw_malloc() を用いて Net.Data の実行時ヒープから割り当てられた記憶域を解放します。 |
dtw_strdup() | dtw_malloc() を用いて、Net.Data の実行時ヒープから記憶域を割り当て、 指定されたストリングを、割り当てた記憶域にコピーします。 |