malloc_get_state(3) - wariua/manpages-ko GitHub Wiki
malloc_get_state, malloc_set_state - malloc ꡬνμ μνλ₯Ό κΈ°λ‘νκ³ λ³΅μνκΈ°
#include <malloc.h>
void *malloc_get_state(void);
int malloc_set_state(void *state);
μ£Όμ: μ΄ ν¨μλ€μ glibc λ²μ 2.25μμ μ κ±°λμλ€.
malloc_get_state()
ν¨μλ malloc(3) λ΄λΆ μν κ΄λ¦¬ λ³μλ€ λͺ¨λμ νμ¬ μνλ₯Ό (νμ μ€μ λ΄μ©μ΄λ malloc_hook(3) ν¨μ ν¬μΈν°λ€μ μνλ μ μΈ) κΈ°λ‘νλ€. malloc(3)μ ν΅ν΄ λμ μΌλ‘ ν λΉν μμ€ν
μμ‘΄μ μΈ λΆν¬λͺ
μλ£ κ΅¬μ‘°μ κ·Έ μνλ₯Ό κΈ°λ‘νκ³ κ·Έ μλ£ κ΅¬μ‘°μ λν ν¬μΈν°λ₯Ό ν¨μ κ²°κ³Όλ‘ λ°ννλ€. (κ·Έ λ©λͺ¨λ¦¬λ₯Ό free(3) νλ κ²μ νΈμΆμμ μ±
μμ΄λ€.)
malloc_set_state()
ν¨μλ malloc(3) λ΄λΆ μν κ΄λ¦¬ λ³μλ€ λͺ¨λμ μνλ₯Ό state
κ° κ°λ¦¬ν€λ λΆν¬λͺ
μλ£ κ΅¬μ‘°μ κΈ°λ‘λ κ°λ€λ‘ 볡μνλ€.
μ±κ³΅ μ malloc_get_state()
λ μλ‘ ν λΉλ λΆν¬λͺ
μλ£ κ΅¬μ‘°μ λν ν¬μΈν°λ₯Ό λ°ννλ€. μ€λ₯ μ (κ°λ Ή κ·Έ μλ£ κ΅¬μ‘°λ₯Ό μν λ©λͺ¨λ¦¬λ₯Ό ν λΉν μ μμΌλ©΄) malloc_get_state()
λ NULLμ λ°ννλ€.
μ±κ³΅ μ malloc_set_state()
λ 0μ λ°ννλ€. state
κ° μ¬λ°λ₯Έ νμμ μλ£ κ΅¬μ‘°λ₯Ό κ°λ¦¬ν€κ³ μμ§ μλ€κ³ ꡬνμμ νμ§ν κ²½μ° malloc_set_state()
κ° -1μ λ°ννλ€. state
κ° κ°λ¦¬ν€λ μλ£ κ΅¬μ‘°μ λ²μ μ΄ κ΅¬νμμ μΈμνλ κ²λ³΄λ€ μ΅μ μ΄λΌκ³ νμ§ν κ²½μ° malloc_set_state()
κ° -2λ₯Ό λ°ννλ€.
μ΄ μ μμ μ¬μ©νλ μ©μ΄λ€μ λν μ€λͺ μ attributes(7)λ₯Ό 보λΌ.
μΈν°νμ΄μ€ | μμ± | κ° |
---|---|---|
malloc_get_state() ,malloc_set_state()
|
μ€λ λ μμ μ± | MT-Safe |
μ΄ ν¨μλ€μ GNU νμ₯μ΄λ€.
malloc(3) ꡬνμ μ΄λ 곡μ λΌμ΄λΈλ¬λ¦¬μ κ΅¬μ± μμλ‘ μ¬μ©νλ©° ν λ΄μ©μ μ΄λ€ λ€λ₯Έ λ°©λ²μΌλ‘ μ μ₯/볡μνλ κ²½μ°μ μ΄ ν¨μλ€μ΄ μ μ©νλ€. GNU μ΄λ§₯μ€μμ μ΄ κΈ°λ²μ μ΄μ©ν΄ "λ€ν" κΈ°λ₯μ ꡬννλ€.
μ΄ ν¨μλ€μμ μ λ ν
ν¨μ ν¬μΈν°λ€μ μ μ₯ λ΄μ§ 볡μνμ§ μλ λ κ°μ§ μμΈκ° μλ€. malloc_get_state()
λ₯Ό νΈμΆν λ malloc κ²μ¬(mallopt(3) μ°Έκ³ )λ₯Ό μ°κ³ μμμΌλ©΄ malloc_set_state()
μμ κ°λ₯ν κ²½μ° malloc κ²μ¬ ν
λ€μ μ΄κΈ°ν νλ€. κΈ°λ‘ν μνμμλ malloc κ²μ¬λ₯Ό μ°κ³ μμ§ μμλλ° νΈμΆμκ° malloc κ²μ¬λ₯Ό μμ²ν΄ λ κ²½μ°μλ ν
λ€μ΄ 0μΌλ‘ μ΄κΈ°ν λλ€.
2017-09-15