名 前
malloc_trim − ヒ ー プ の 一 番 上 か ら 未 使 用 メ モ リ ー を 解 放 す る
書 式
#include <malloc.h>
int malloc_trim(size_t pad);
説 明
malloc_trim() 関 数 は (適 切 な 引 き 数 で sbrk(2) を 呼 び 出 し て ) ヒ ー プ の 一 番 上 の 未 使 用 メ モ リ ー の 解 放 を 試 み る 。
pad 引 き 数 は 、 ヒ ー プ の 一 番 上 か ら 切 り 詰 め る 際 に 残 す 未 使 用 領 域 の 量 を 指 定 す る 。 こ の 引 き 数 が 0 の 場 合 、 ヒ ー プ の 一 番 上 の 最 小 量 の メ モ リ ー だ け を 維 持 で き る (つ ま り 1 ペ ー ジ か そ れ 未 満 )。 0 以 外 の 引 き 数 を 指 定 す る と 、 ヒ ー プ の 一 番 上 に あ る 程 度 の 量 の 未 使 用 領 域 を 残 し 、 将 来 の 割 り 当 て を sbrk(2) で ヒ ー プ を 拡 張 せ ず に 行 え る よ う に で き る 。
返 り 値
malloc_trim() 関 数 は メ モ リ ー が 実 際 に 解 放 さ れ シ ス テ ム に 戻 さ れ た 場 合 に 1 を 返 し 、 ど の メ モ リ ー も 解 放 で き な か っ た 場 合 は 0 を 返 す 。
エ ラ ー
エ ラ ー は 定 義 さ れ て い な い 。
準 拠
こ の 関 数 は GNU に よ る 拡 張 で あ る 。
注 意
こ の 関 数 は 、 特 定 の 状 況 で は free(3) に よ り 自 動 的 に 呼 び 出 さ れ る 。 mallopt(3) の M_TOP_PAD と M_TRIM_THRESHOLD の 議 論 を 参 照 。 こ の 関 数 は 、 ヒ ー プ の 一 番 上 以 外 の 場 所 に あ る 未 使 用 メ モ リ ー を 解 放 す る こ と は で き な い 。 こ の 関 数 は メ イ ン 領 域 の メ モ リ ー だ け を 解 放 す る 。
関 連 項 目
sbrk(2), malloc(3), mallopt(3)
こ の 文 書 に つ い て
こ の man ペ ー ジ は Linux man−pages プ ロ ジ ェ ク ト の リ リ ー ス 3.79 の 一 部 で あ る 。 プ ロ ジ ェ ク ト の 説 明 と バ グ 報 告 に 関 す る 情 報 は http://www.kernel.org/doc/man−pages/ に 書 か れ て い る 。