ΠΠ±ΡΡ ΡΠΈΠΊΠ»ΡΡΠ½ΠΈΡ ΠΏΠΎΡΠΈΠ»Π°Π½Ρ
ΠΠ°Π·Π²ΠΈΡΠ°ΠΉ ΠΌΠ΅Ρ Π°Π½ΡΠ·ΠΌΠΈ ΠΏΡΠ΄ΡΠ°Ρ ΡΠ½ΠΊΡ ΠΏΠΎΡΠΈΠ»Π°Π½Ρ Ρ ΠΏΠ°ΠΌ'ΡΡΡ, Π½Π°ΠΏΡΠΈΠΊΠ»Π°Π΄, ΡΠΊΡ ΠΏΡΠ°ΡΡΠ²Π°Π»ΠΈ Π² PHP ΡΠ°Π½ΡΡΠ΅, Π½Π΅ Π²ΠΈΡΡΡΡΡΡΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ Π²ΠΈΡΠΎΠΊΡ ΠΏΠ°ΠΌ'ΡΡΡ ΡΠ΅ΡΠ΅Π· ΡΠΈΠΊΠ»ΡΡΠ½Ρ ΠΏΠΎΡΠΈΠ»Π°Π½Π½Ρ. ΠΠΎΡΠΈΠ½Π°ΡΡΠΈ Π· Π²Π΅ΡΡΡΡ 5.3.0 Ρ PHP ΡΠ΅Π°Π»ΡΠ·ΠΎΠ²Π°Π½ΠΎ ΡΠΈΠ½Ρ ΡΠΎΠ½Π½ΠΈΠΉ ΠΌΠ΅Ρ Π°Π½ΡΠ·ΠΌ ΡΠ· Π΄ΠΎΡΠ»ΡΠ΄ΠΆΠ΅Π½Π½Ρ Β«Β»Β Concurrent Cycle Collection in Reference Counted SystemsΒ», Ρ ΡΠΊΠΎΠΌΡ ΡΠΎΠ·Π³Π»ΡΠ΄Π°ΡΡΡΡΡ ΡΠ΅ ΠΏΠΈΡΠ°Π½Π½Ρ.
ΠΠΎΠ²Π½ΠΈΠΉ ΠΎΠΏΠΈΡ ΡΠΎΠ±ΠΎΡΠΈ Π°Π»Π³ΠΎΡΠΈΡΠΌΡ Π²ΠΈΡ ΠΎΠ΄ΠΈΡΡ Π·Π° ΠΌΠ΅ΠΆΡ ΡΡΠΎΠ³ΠΎ ΡΠΎΠ·Π΄ΡΠ»Ρ, ΡΠΎΠΌΡ Π½Π°Π²Π΅Π΄Π΅Π½ΠΎ Π»ΠΈΡΠ΅ ΠΎΡΠ½ΠΎΠ²ΠΈ. Π‘ΠΏΠΎΡΠ°ΡΠΊΡ ΠΏΠΎΡΡΡΠ±Π½ΠΎ ΠΏΠΎΡΡΠ°Π²ΠΈΡΠΈ ΠΎΡΠ½ΠΎΠ²Π½Ρ ΠΏΡΠ°Π²ΠΈΠ»Π°. Π―ΠΊΡΠΎ Π»ΡΡΠΈΠ»ΡΠ½ΠΈΠΊ ΠΏΠΎΡΠΈΠ»Π°Π½Ρ Π·Π±ΡΠ»ΡΡΡΡΡΡΡΡ, ΡΠΎ ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅Ρ Π²ΡΠ΅ ΡΠ΅ ΠΏΠΎΡΡΡΠ±Π½ΠΈΠΉ Ρ Π½Π΅ Π²Π²Π°ΠΆΠ°ΡΠΈΠΌΠ΅ΡΡΡΡ ΡΠΌΡΡΡΡΠΌ. Π―ΠΊΡΠΎ Π»ΡΡΠΈΠ»ΡΠ½ΠΈΠΊ Π·ΠΌΠ΅Π½ΡΡΡΡΡΡΡ Π΄ΠΎ Π½ΡΠ»Ρ, zval ΠΌΠΎΠΆΠ΅ Π±ΡΡΠΈ Π²ΠΈΠ΄Π°Π»Π΅Π½ΠΈΠΉ. Π ΡΠ°ΠΊΠΈΠΌΠΈ ΠΏΡΠ°Π²ΠΈΠ»Π°ΠΌΠΈ Π²ΠΈΡΠΎΠΊΡ ΠΏΠ°ΠΌ'ΡΡΡ Π· ΡΠΈΠΊΠ»ΡΡΠ½ΠΈΠΌΠΈ ΠΏΠΎΡΠΈΠ»Π°Π½Π½ΡΠΌΠΈ ΠΌΠΎΠΆΡΡΡ Π²ΠΈΠΉΡΠΈ ΡΡΠ»ΡΠΊΠΈ ΠΏΡΠΈ Π·ΠΌΠ΅Π½ΡΠ΅Π½Π½Ρ Π»ΡΡΠΈΠ»ΡΠ½ΠΈΠΊΠ° ΠΏΠΎΡΠΈΠ»Π°Π½Ρ Π΄ΠΎ Π½Π΅Π½ΡΠ»ΡΠΎΠ²ΠΎΠ³ΠΎ Π·Π½Π°ΡΠ΅Π½Π½Ρ. ΠΠΎΡΡΠΌ Ρ Π²ΠΈΠ΄ΡΠ»Π΅Π½ΠΈΡ ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΠ°Ρ ΠΌΠΎΠΆΠ½Π° Π·Π½Π°ΠΉΡΠΈ ΡΠΌΡΡΡΡ, ΠΏΠ΅ΡΠ΅Π²ΡΡΠΈΠ²ΡΠΈ, ΡΠΈ ΠΌΠΎΠΆΠ½Π° Π·ΠΌΠ΅Π½ΡΠΈΡΠΈ Π²ΡΡ Π»ΡΡΠΈΠ»ΡΠ½ΠΈΠΊΠΈ ΠΏΠΎΡΠΈΠ»Π°Π½Ρ Π½Π° ΠΎΠ΄ΠΈΠ½ΠΈΡΡ, Ρ Π²ΠΈΠ·Π½Π°ΡΠΈΠ²ΡΠΈ ΡΡ ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΠΈ, Ρ ΡΠΊΠΈΡ Π»ΡΡΠΈΠ»ΡΠ½ΠΈΠΊ ΡΡΠ°Π½Π΅ ΡΡΠ²Π½ΠΈΠΌ Π½ΡΠ»Ρ.
Π©ΠΎΠ± ΡΠ½ΠΈΠΊΠ½ΡΡΠΈ ΠΏΠΎΡΡΡΠΉΠ½ΠΎΡ ΠΏΠ΅ΡΠ΅Π²ΡΡΠΊΠΈ Π½Π° ΡΠΌΡΡΡΡ Π· ΡΠΈΠΊΠ»ΡΡΠ½ΠΈΠΌΠΈ ΠΏΠΎΡΠΈΠ»Π°Π½Π½ΡΠΌΠΈ ΠΏΡΠΈ ΠΊΠΎΠΆΠ½ΠΎΠΌΡ Π·ΠΌΠ΅Π½ΡΠ΅Π½Π½Ρ Π»ΡΡΠΈΠ»ΡΠ½ΠΈΠΊΠ° ΠΏΠΎΡΠΈΠ»Π°Π½Ρ, Π°Π»Π³ΠΎΡΠΈΡΠΌ Π΄ΠΎΠ΄Π°Ρ Π²ΡΠ΅ ΠΌΠΎΠΆΠ»ΠΈΠ²Π΅ ΠΊΠΎΡΡΠ½Π½Ρ (zval ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΠΈ) Π² Β«ΠΊΠΎΡΠ΅Π½Π΅Π²ΠΈΠΉ Π±ΡΡΠ΅ΡΒ» (ΠΏΠΎΠ·Π½Π°ΡΠ°ΡΡΠΈ ΡΡ ΡΠΊ Β«ΡΡΠΎΠ»Π΅ΡΠΎΠ²ΡΒ»). Π¦Π΅ ΡΠ°ΠΊΠΎΠΆ Π³Π°ΡΠ°Π½ΡΡΡ ΠΏΠΎΠΏΠ°Π΄Π°Π½Π½Ρ Π±ΡΠ΄Ρ-ΡΠΊΠΎΠ³ΠΎ ΠΊΠΎΡΠ΅Π½Ρ Π² Π±ΡΡΠ΅Ρ Π»ΠΈΡΠ΅ ΠΎΠ΄ΠΈΠ½ ΡΠ°Π·. ΠΠ΅Ρ Π°Π½ΡΠ·ΠΌ ΡΠΊΠ»Π°Π΄Π°Π½Π½Ρ ΡΠΌΡΡΡΡ ΡΡΠ°ΡΡΡΡ Π»ΠΈΡΠ΅ ΡΠΎΠ΄Ρ, ΠΊΠΎΠ»ΠΈ Π½Π°ΠΏΠΎΠ²Π½ΡΡΡΡΡΡ Π±ΡΡΠ΅Ρ (Π΄ΠΈΠ²ΡΡΡΡΡ ΠΊΡΠΎΠΊ A Π½Π° ΠΌΠ°Π»ΡΠ½ΠΊΡ Π²ΠΈΡΠ΅).
ΠΠ° ΠΊΡΠΎΡΡ B Π°Π»Π³ΠΎΡΠΈΡΠΌ ΡΡΠΊΠ°Ρ Π² Π³Π»ΠΈΠ±ΠΈΠ½Ρ ΠΏΠΎ Π²ΡΡΡ ΠΌΠΎΠΆΠ»ΠΈΠ²ΠΈΡ ΠΊΠΎΡΠ΅Π½ΡΡ Π΄Π»Ρ ΠΎΠ΄Π½ΠΎΡΠ°Π·ΠΎΠ²ΠΎΠ³ΠΎ Π·ΠΌΠ΅Π½ΡΠ΅Π½Π½Ρ Π»ΡΡΠΈΠ»ΡΠ½ΠΈΠΊΠ° ΠΏΠΎΡΠΈΠ»Π°Π½Ρ Π½Π° ΠΎΠ΄ΠΈΠ½ΠΈΡΡ Ρ Π²ΡΡΡ ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΡΠ² (ΠΏΠΎΠ·Π½Π°ΡΠ°ΡΡΠΈ ΡΡ ΡΠΊ Β«ΡΡΡΡΒ»). ΠΠ° ΠΊΡΠΎΡΡ C Π°Π»Π³ΠΎΡΠΈΡΠΌ Π·Π½ΠΎΠ²Ρ ΡΡΠΊΠ°Ρ Π΄Π»Ρ ΠΏΠ΅ΡΠ΅Π²ΡΡΠΊΠΈ Π»ΡΡΠΈΠ»ΡΠ½ΠΈΠΊΡΠ² ΠΏΠΎΡΠΈΠ»Π°Π½Ρ. Π―ΠΊΡΠΎ Π²ΡΠ½ Π·Π½Π°Ρ ΠΎΠ΄ΠΈΡΡ Π»ΡΡΠΈΠ»ΡΠ½ΠΈΠΊ Π· Π½ΡΠ»ΡΠΎΠ²ΠΈΠΌ Π·Π½Π°ΡΠ΅Π½Π½ΡΠΌ, ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅Ρ ΠΏΠΎΠ·Π½Π°ΡΠ°ΡΡΡΡΡ ΡΠΊ Β«Π±ΡΠ»ΠΈΠΉΒ» (Π½Π° ΠΌΠ°Π»ΡΠ½ΠΊΡ Π²ΡΠ΄ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΎ ΡΠΈΠ½ΡΠΌ). Π―ΠΊΡΠΎ Π»ΡΡΠΈΠ»ΡΠ½ΠΈΠΊ Π±ΡΠ»ΡΡΠΈΠΉ Π·Π° Π½ΡΠ»Ρ, ΡΠΎ ΠΏΠΎΡΡΠΊ ΠΉΠ΄Π΅ Π² Π³Π»ΠΈΠ±ΠΈΠ½Ρ Π²ΡΠ΄ ΡΡΠΎΠ³ΠΎ ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΠ° Π·Ρ Π·Π²ΠΎΡΠΎΡΠ½ΠΈΠΌ Π·Π±ΡΠ»ΡΡΠ΅Π½Π½ΡΠΌ Π»ΡΡΠΈΠ»ΡΠ½ΠΈΠΊΡΠ² Π½Π° ΠΎΠ΄ΠΈΠ½ΠΈΡΡ Ρ ΠΏΠΎΠ²ΡΠΎΡΠ½ΠΎΡ ΠΏΠΎΠ·Π½Π°ΡΠΊΠΎΡ ΡΠΊ Β«ΡΠΎΡΠ½ΠΈΠΉΒ» Π½Π° ΡΡ ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΠ°Ρ . ΠΠ° ΠΎΡΡΠ°Π½Π½ΡΠΎΠΌΡ ΠΊΡΠΎΡΡ D Π°Π»Π³ΠΎΡΠΈΡΠΌ ΠΏΡΠΎΡ ΠΎΠ΄ΠΈΡΡ ΠΊΠΎΡΠ΅Π½Π΅Π²ΠΈΠΌ Π±ΡΡΠ΅ΡΠΎΠΌ Ρ Π²ΠΈΠ΄Π°Π»ΡΡ Π· Π½ΡΠΎΠ³ΠΎ ΠΊΠΎΡΡΠ½Π½Ρ ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΡΠ², Π·Π°ΠΎΠ΄Π½ΠΎ ΠΏΠ΅ΡΠ΅Π²ΡΡΡΡΡΠΈ ΡΠΊΡ ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΠΈ ΠΏΠΎΠ·Π½Π°ΡΠ΅Π½Ρ ΡΠΊ Β«Π±ΡΠ»ΡΒ». Π¦Ρ ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΠΈ Π±ΡΠ΄Π΅ Π·Π²ΡΠ»ΡΠ½Π΅Π½ΠΎ Π· ΠΏΠ°ΠΌ'ΡΡΡ.
Π’Π΅ΠΏΠ΅Ρ, ΠΊΠΎΠ»ΠΈ Ρ ΡΡΠ²Π»Π΅Π½Π½Ρ ΠΏΡΠΎ ΡΠΎΠ±ΠΎΡΡ Π°Π»Π³ΠΎΡΠΈΡΠΌΡ, ΡΠΎΠ·Π³Π»ΡΠ½Π΅ΠΌΠΎ ΠΉΠΎΠ³ΠΎ ΡΠ½ΡΠ΅Π³ΡΠ°ΡΡΡ Π΄ΠΎ PHP. ΠΠ° Π·Π°ΠΌΠΎΠ²ΡΡΠ²Π°Π½Π½ΡΠΌ Π·Π±ΠΈΡΠ°Ρ ΡΠΌΡΡΡΡ Π·Π°Π²ΠΆΠ΄ΠΈ Π²ΠΊΠ»ΡΡΠ΅Π½ΠΈΠΉ. ΠΠ»Ρ Π·ΠΌΡΠ½ΠΈ ΡΡΡΡ ΠΎΠΏΡΡΡ Π²ΠΈΠΊΠΎΡΠΈΡΡΠΎΠ²ΡΡΡΡΡΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ zend.enable_gcΠ² php.ini.
Π―ΠΊΡΠΎ Π·Π±ΠΈΡΠ°Ρ ΡΠΌΡΡΡΡ Π²ΠΊΠ»ΡΡΠ΅Π½ΠΈΠΉ, Π°Π»Π³ΠΎΡΠΈΡΠΌ ΠΏΠΎΡΡΠΊΡ ΡΠΈΠΊΠ»ΡΡΠ½ΠΈΡ
ΠΏΠΎΡΠΈΠ»Π°Π½Ρ Π²ΠΈΠΊΠΎΠ½ΡΡΡΡΡΡ ΡΠΎΡΠ°Π·Ρ, ΠΊΠΎΠ»ΠΈ ΠΊΠΎΡΠ΅Π½Π΅Π²ΠΈΠΉ Π±ΡΡΠ΅Ρ Π½Π°ΠΏΠΎΠ²Π½ΡΡΡΡΡΡ 10 000 ΠΊΠΎΡΡΠ½Π½ΡΠΌ (ΠΌΠΎΠΆΠ½Π° Π·ΠΌΡΠ½ΠΈΡΠΈ ΡΠ΅ Π·Π½Π°ΡΠ΅Π½Π½Ρ, Π·ΠΌΡΠ½ΠΈΠ²ΡΠΈ ΠΊΠΎΠ½ΡΡΠ°Π½ΡΡ GC_THRESHOLD_DEFAULT
Ρ ΡΠ°ΠΉΠ»Ρ Zend/zend_gc.c
Ρ Π²ΠΈΡ
ΡΠ΄Π½ΠΎΠΌΡ ΠΊΠΎΠ΄Ρ PHP Ρ ΠΏΠ΅ΡΠ΅Π±ΡΠ°Π²ΡΠΈ PHP). Π―ΠΊΡΠΎ Π·Π±ΠΈΡΠ°Ρ ΡΠΌΡΡΡΡ Π²ΠΈΠΌΠΊΠ½Π΅Π½ΠΎ, Π°Π»Π³ΠΎΡΠΈΡΠΌ Π½ΡΠΊΠΎΠ»ΠΈ Π½Π΅ Π±ΡΠ΄Π΅ Π·Π°ΠΏΡΡΠ΅Π½ΠΎ. Π’ΠΈΠΌ Π½Π΅ ΠΌΠ΅Π½Ρ, Π±ΡΡΠ΅Ρ Π·Π°Π²ΠΆΠ΄ΠΈ Π·Π°ΠΏΠΎΠ²Π½ΡΡΡΡΡΡ ΠΊΠΎΡΡΠ½Π½ΡΠΌ.
Π―ΠΊΡΠΎ Π±ΡΡΠ΅Ρ Π·Π°ΠΏΠΎΠ²Π½ΠΈΠ²ΡΡ ΠΏΡΠΈ Π²ΠΈΠΌΠΊΠ½Π΅Π½ΠΎΠΌΡ ΠΌΠ΅Ρ Π°Π½ΡΠ·ΠΌΡ ΡΠΊΠ»Π°Π΄Π°Π½Π½Ρ ΡΠΌΡΡΡΡ, ΡΠΎ ΡΠ½ΡΠ΅ ΠΊΠΎΡΡΠ½Π½Ρ Π½Π΅ Π±ΡΠ΄Π΅ Π² Π½ΡΠΎΠ³ΠΎ Π·Π°ΠΏΠΈΡΠ°Π½ΠΎ. Π’Π°ΠΊΠΈΠΌ ΡΠΈΠ½ΠΎΠΌ, ΡΠΊΡΠΎ Π²ΠΎΠ½ΠΈ Π²ΠΈΡΠ²Π»ΡΡΡΡΡ ΡΠΌΡΡΡΡΠΌ ΡΠ· ΡΠΈΠΊΠ»ΡΡΠ½ΠΈΠΌΠΈ ΠΏΠΎΡΠΈΠ»Π°Π½Π½ΡΠΌΠΈ, ΡΠΎ Π½ΡΠΊΠΎΠ»ΠΈ Π½Π΅ Π±ΡΠ΄ΡΡΡ ΠΎΡΠΈΡΠ΅Π½Ρ ΡΠ° ΡΡΠ²ΠΎΡΡΡΡ Π²ΠΈΡΡΠΊ ΠΏΠ°ΠΌ'ΡΡΡ.
ΠΡΠΈΡΠΈΠ½ΠΎΡ ΠΏΠΎΡΡΡΠΉΠ½ΠΎΠ³ΠΎ Π·Π°ΠΏΠΈΡΡ ΠΊΠΎΡΡΠ½Π½Ρ Π² Π±ΡΡΠ΅Ρ Π½Π°Π²ΡΡΡ ΠΏΡΠΈ Π²ΠΈΠΌΠΊΠ½Π΅Π½ΠΎΠΌΡ ΠΌΠ΅Ρ Π°Π½ΡΠ·ΠΌΡ ΡΠΊΠ»Π°Π΄Π°Π½Π½Ρ ΡΠΌΡΡΡΡ Ρ ΡΠ΅, ΡΠΎ ΡΠ΅ Π½Π°Π±Π°Π³Π°ΡΠΎ ΡΠ²ΠΈΠ΄ΡΠ΅, Π½ΡΠΆ ΠΏΠΎΡΡΡΠΉΠ½ΠΎ ΠΏΠ΅ΡΠ΅Π²ΡΡΡΡΠΈ, ΡΠΈ ΡΠ²ΡΠΌΠΊΠ½Π΅Π½ΠΈΠΉ ΠΌΠ΅Ρ Π°Π½ΡΠ·ΠΌ ΡΠΊΠ»Π°Π΄Π°Π½Π½Ρ ΡΠΌΡΡΡΡ. ΠΡΠΎΡΠ΅, ΡΠ°ΠΌΠ΅ ΡΠΊΠ»Π°Π΄Π°Π½Π½Ρ ΡΠΌΡΡΡΡ ΡΠ° Π°Π»Π³ΠΎΡΠΈΡΠΌ ΡΡ Π°Π½Π°Π»ΡΠ·Ρ ΠΌΠΎΠΆΡΡΡ Π·Π°ΠΉΠΌΠ°ΡΠΈ Π·Π½Π°ΡΠ½ΠΈΠΉ ΡΠ°Ρ.
ΠΡΠΎΠΌΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ°zend.enable_gc, ΠΌΠ΅Ρ Π°Π½ΡΠ·ΠΌ ΡΠΊΠ»Π°Π΄Π°Π½Π½Ρ ΡΠΌΡΡΡΡ ΠΌΠΎΠΆΠ½Π° Π·Π°ΠΏΡΡΡΠΈΡΠΈ Ρ Π·ΡΠΏΠΈΠ½ΠΈΡΠΈ, ΠΏΠΎΡΠ»ΡΠ΄ΠΎΠ²Π½ΠΎ Π²ΠΈΠΊΠ»ΠΈΠΊΠ°Π²ΡΠΈ ΡΡΠ½ΠΊΡΡΡ gc_enable() Ρ gc_disable(). ΠΠΈΠΊΠ»ΠΈΠΊ ΡΠΈΡ ΡΡΠ½ΠΊΡΡΠΉ ΠΌΠ°Ρ ΡΠΎΠΉ ΡΠ°ΠΌΠΈΠΉ Π΅ΡΠ΅ΠΊΡ, ΡΠΎ ΠΉ ΡΠ²ΡΠΌΠΊΠ½Π΅Π½Π½Ρ/Π²ΠΈΠΌΠΊΠ½Π΅Π½Π½Ρ ΠΌΠ΅Ρ Π°Π½ΡΠ·ΠΌΡ Ρ Π½Π°Π»Π°ΡΡΡΠ²Π°Π½Π½ΡΡ ΠΊΠΎΠ½ΡΡΠ³ΡΡΠ°ΡΡΡ. ΠΡΡΠΌ ΡΠΎΠ³ΠΎ, ΠΌΠΎΠΆΠ½Π° Π·Π°ΠΏΡΡΡΠΈΡΠΈ ΡΠΊΠ»Π°Π΄Π°Π½Π½Ρ ΡΠΌΡΡΡΡ, Π½Π°Π²ΡΡΡ ΡΠΊΡΠΎ ΠΊΠΎΡΠ΅Π½Π΅Π²ΠΈΠΉ Π±ΡΡΠ΅Ρ ΡΠ΅ Π½Π΅ Π·Π°ΠΏΠΎΠ²Π½Π΅Π½ΠΈΠΉ. ΠΠ»Ρ ΡΡΠΎΠ³ΠΎ Π²ΠΈ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π²ΠΈΠΊΠ»ΠΈΠΊΠ°ΡΠΈ ΡΡΠ½ΠΊΡΡΡ gc_collect_cycles(), ΡΠΊΠ° ΡΠ°ΠΊΠΎΠΆ ΠΏΠΎΠ²Π΅ΡΡΠ°Ρ ΠΊΡΠ»ΡΠΊΡΡΡΡ ΡΠΈΠΊΠ»ΡΡΠ½ΠΈΡ ΠΏΠΎΡΠΈΠ»Π°Π½Ρ, Π·ΡΠ±ΡΠ°Π½ΠΈΡ Π°Π»Π³ΠΎΡΠΈΡΠΌΠΎΠΌ.
ΠΡΠΈΡΠΈΠ½ΠΎΡ Π²ΠΊΠ»ΡΡΠ΅Π½Π½Ρ ΡΠ° Π²ΠΈΠΌΠΈΠΊΠ°Π½Π½Ρ ΠΌΠ΅Ρ Π°Π½ΡΠ·ΠΌΡ ΡΠΊΠ»Π°Π΄Π°Π½Π½Ρ, Π° ΡΠ°ΠΊΠΎΠΆ ΠΉΠΎΠ³ΠΎ ΡΡΡΠ½ΠΎΠ³ΠΎ Π·Π°ΠΏΡΡΠΊΡ ΠΌΠΎΠΆΠ΅ ΡΡΠ°ΡΠΈ ΡΠ΅, ΡΠΎ Π΄Π΅ΡΠΊΡ ΡΠ°ΡΡΠΈΠ½ΠΈ Π²Π°ΡΠΎΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΈ ΠΌΠΎΠΆΡΡΡ Π±ΡΡΠΈ Π²ΠΈΠΌΠΎΠ³Π»ΠΈΠ²ΠΈΠΌΠΈ Π΄ΠΎ ΡΠ°ΡΡ. Π£ ΡΠΈΡ Π²ΠΈΠΏΠ°Π΄ΠΊΠ°Ρ , ΠΌΠΎΠΆΠ»ΠΈΠ²ΠΎ, Π½Π΅ Π·Π°Ρ ΠΎΡΠ΅ΡΡΡΡ ΡΡΠΎΡΠΎΠ½Π½ΡΠΎΠ³ΠΎ Π²ΡΡΡΡΠ°Π½Π½Ρ Π·Π±ΠΈΡΠ°ΡΠ° ΡΠΌΡΡΡΡ. ΠΡΠΎΠ·ΡΠΌΡΠ»ΠΎ, Π²ΠΈΠΌΠΈΠΊΠ°ΡΡΠΈ Π·Π±ΠΈΡΠ°Ρ ΡΠΌΡΡΡΡ Π² ΠΏΠ΅Π²Π½ΠΈΡ ΠΌΡΡΡΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΈ, Ρ ΡΠΈΠ·ΠΈΠΊ ΠΎΡΡΠΈΠΌΠ°ΡΠΈ Π²ΠΈΡΡΠΊ ΠΏΠ°ΠΌ'ΡΡΡ, ΡΠΎΠΌΡ ΡΠΎ ΠΏΠΎΡΠ΅Π½ΡΡΠΉΠ½ΠΎ Π΄Π΅ΡΠΊΡ ΠΊΠΎΡΠ΅Π½Ρ ΠΌΠΎΠΆΡΡΡ Π½Π΅ ΠΏΠΎΠΌΡΡΡΠΈΡΠΈΡΡ Π² ΠΎΠ±ΠΌΠ΅ΠΆΠ΅Π½ΠΈΠΉ ΠΊΠΎΡΠ΅Π½Π΅Π²ΠΈΠΉ Π±ΡΡΠ΅Ρ. ΠΠΎΡΡΠ»ΡΠ½ΡΡΠ΅ Π±ΡΠ΄Π΅ Π²ΠΈΠΊΠ»ΠΈΠΊΠ°ΡΠΈ ΡΡΠ½ΠΊΡΡΡ gc_collect_cycles() ΠΏΡΡΠΌΠΎ ΠΏΠ΅ΡΠ΅Π΄ Π²ΠΈΠΊΠ»ΠΈΠΊΠΎΠΌ ΡΡΠ½ΠΊΡΡΡ gc_disable() Π΄Π»Ρ Π·Π²ΡΠ»ΡΠ½Π΅Π½Π½Ρ ΠΏΠ°ΠΌ'ΡΡΡ ΡΠ° Π²ΠΆΠ΅ Π·Π°ΠΏΠΈΡΠ°Π½ΠΈΡ ΠΊΠΎΡΠ΅Π½ΡΠ² Ρ Π±ΡΡΠ΅ΡΡ. Π¦Π΅ ΠΎΡΠΈΡΡΠΈΡΡ Π±ΡΡΠ΅Ρ Ρ Π΄Π°ΡΡΡ Π±ΡΠ»ΡΡΠ΅ ΠΌΡΡΡΡ Π΄Π»Ρ Π·Π±Π΅ΡΡΠ³Π°Π½Π½Ρ ΠΊΠΎΡΡΠ½Π½Ρ, Π΄ΠΎΠΊΠΈ ΠΌΠ΅Ρ Π°Π½ΡΠ·ΠΌ Π±ΡΠ΄Π΅ Π²ΠΈΠΌΠΊΠ½Π΅Π½ΠΈΠΉ.