diff --git a/src/pocketmine/MemoryManager.php b/src/pocketmine/MemoryManager.php index 114a841e1..8b291dd9c 100644 --- a/src/pocketmine/MemoryManager.php +++ b/src/pocketmine/MemoryManager.php @@ -234,6 +234,8 @@ class MemoryManager{ $refCounts = []; + $instanceCounts = []; + $staticCount = 0; foreach($this->server->getLoader()->getClasses() as $className){ $reflection = new \ReflectionClass($className); @@ -269,6 +271,11 @@ class MemoryManager{ $continue = true; $className = get_class($object); + if(!isset($instanceCounts[$className])){ + $instanceCounts[$className] = 1; + }else{ + $instanceCounts[$className]++; + } $objects[$hash] = true; @@ -310,6 +317,9 @@ class MemoryManager{ file_put_contents($outputFolder . "/serverEntry.js", json_encode($data, JSON_UNESCAPED_SLASHES | JSON_PRETTY_PRINT)); file_put_contents($outputFolder . "/referenceCounts.js", json_encode($refCounts, JSON_UNESCAPED_SLASHES | JSON_PRETTY_PRINT)); + arsort($instanceCounts, SORT_NUMERIC); + file_put_contents($outputFolder . "/instanceCounts.js", json_encode($instanceCounts, JSON_UNESCAPED_SLASHES | JSON_PRETTY_PRINT)); + echo "[Dump] Finished!\n"; ini_set('memory_limit', $hardLimit);