Bug #81027 [Com]: WeakReference will cause memory leaks

From: Date: Mon, 10 May 2021 14:09:11 +0000
Subject: Bug #81027 [Com]: WeakReference will cause memory leaks
References: 1  Groups: php.bugs 
Request: Send a blank email to php-bugs+get-233763@lists.php.net to get a copy of this message
Edit report at https://bugs.php.net/bug.php?id=81027&edit=1 ID: 81027 Comment by: gy dot dlcs at gmail dot com Reported by: gy dot dlcs at gmail dot com Summary: WeakReference will cause memory leaks Status: Open Type: Bug Package: Unknown/Other Function Operating System: Linux PHP Version: 8.0.6 Block user comment: N Private report: N New Comment: php 7.4 and 8.0 will be affected Previous Comments: ------------------------------------------------------------------------ [2021-05-10 14:04:46] gy dot dlcs at gmail dot com Description: ------------ Just like the test script, When you Uncomment the !$wr->get(); line, You will see the memory leaks in a few seconds. Test script: --------------- <?php ini_set('memory_limit', '16M'); while (true) { $a = new stdClass(); $a->a = $a; $wr = WeakReference::create($a); unset($a); // Uncomment next line, memory will not leak // $wr->get(); // Uncomment next line, memory will leak // !$wr->get(); } Expected result: ---------------- PHP Fatal error: Allowed memory size of 16777216 bytes exhausted (tried to allocate 20480 bytes) in test.php on line 9 ------------------------------------------------------------------------ -- Edit this bug report at https://bugs.php.net/bug.php?id=81027&edit=1

« previous php.bugs (#233763) next »