Действительно ли память освобождается с помощью gc_mem_caches()?

#php #memory-management #garbage-collection

Вопрос:

У меня есть очень простой сценарий:

 <?php 
echo number_format(memory_get_usage()) . "n";
echo number_format(gc_mem_caches()) . "n";
echo number_format(gc_mem_caches()) . "n";
echo number_format(memory_get_usage()) . "n";
 

Он выводит это:

 394,672
40,960
0
394,704
 

Это означает, что gc_mem_caches() освободилось некоторое количество памяти, но memory_get_usage() по-прежнему отображается тот же объем используемой памяти. Это почему? Почему использование памяти не снижается?