나는 twitter-async library을 사용하여 트위터에 대한 oauth 호출을 수행하지만 궁극적으로 많은 메모리가 소모되고 있습니다. xdebug 실행 추적을 실행 해 보았습니다. 그리고 이것은 메모리가 누수되고 있다고 느낍니다.gettype() 메모리 누수
json_decode()
은 47077232 바이트를 사용합니다. 괜찮아. 이건 괜찮아.
그러나 gettype()
? 왜 비슷한 양의 메모리를 사용해야합니까?
어떻게 예방할 수 있습니까?
스크립트가 루프에서 실행되고 메모리 사용이 계속 증가합니다. 나는 장소 수에 gc_collect_cycles()
를 사용하고 있으며 개선을 보이고 있습니다. 하지만이 일이 왜 일어날 지 이해할 수 없습니다. documentation에서
724.1772 47077232 +2118720 -> json_decode() /var/www/html/includes/classes/twitter/EpiTwitter.php:230
724.1926 49157104 +2079872 -> gettype() /var/www/html/includes/classes/twitter/EpiTwitter.php:232
724.1927 49157104 +0 -> property_exists() /var/www/html/includes/classes/twitter/EpiTwitter.php:240
724.1927 49153520 -3584 -> EpiTwitterJson->__destruct() /var/www/html/includes/classes/twitter/EpiTwitter.php:0
724.1949 46714808 -2438712 -> in_array() /var/www/html/cron.php:156
gettype이 메모리를 유출하는지도 모르겠지만 gettype이 지옥처럼 느리다는 것을 알고 있습니다! gettype에서 is_ * –
으로 마이그레이션 할 수 있습니까? 사용중인 명령을 정확하게 표시 할 수 있습니까? –
@ 페카 당신을 잡을 수 없었습니다. 정확히 무엇을 원하니? – kapeels