defer in golang is slow