Я так полагаю это такие предварительные ласки, чтобы в итоге в момент $task_creator->create_task получить аналог my $task = new Task $task->save $task->send_mail($manager_email) $task->send_mail($admin_email)
так а зачем тебе его "вычислять", почему он сразу там лежать не может? а если уж надо генерировать, ну так почему бы не цикл типа while ($obj->get_next) тогда?
это у вас в линуксах аллокатор glibc "течет", известная проблема на примере того же Telegram Desktop, они в итоге аж фрёвый jemalloc втащили - ну и я тут как-то показывал, на фре такой пример вполне освобождает