gc_enable în PHP

Pornește colectorul de referințe circulare (dacă a fost oprit).

Sintaxă
gc_enable(): void

Ce face gc_enable

gc_enable repornește colectorul după un gc_disable sau dacă zend.enable_gc este 0 în php.ini. De obicei nu este nevoie de el, pentru că PHP pornește cu colectorul activ.

Ce returnează

Nimic.

Exemple

Exemplul 1: Repornire după o operație

<?php
gc_disable();
// ... o operație scurtă, care creează foarte multe obiecte temporare
gc_enable();

var_dump(gc_enabled());

Rezultat

bool(true)

Greșeli frecvente

  • Uiți să repornești colectorul după gc_disable într-un script care rulează ore întregi. Referințele circulare se adună și memoria crește continuu.

Comenzi înrudite

  • gc_disable: Oprește colectorul automat de referințe circulare.
  • gc_enabled: Verifică dacă colectorul de referințe circulare este pornit.
  • gc_collect_cycles: Pornește imediat colectorul de referințe circulare și returnează câte valori a eliberat.