KCacheGrind 中的闭包是什么?

What is closure in KCacheGrind?

KCacheGrind中的closure是什么意思?我有一个函数,它指出了 spl_autoload_register() 函数,KCacheGrind 中的 spl_autoload_call。而且函数的self时间是60+所以当然想优化一下,但是不知道从何下手

KCacheGrind 中的 closure 是什么?

我需要优化上述功能以减少self时间吗?

闭包是一个函数,它使用的变量在其局部范围之外,但不是全局范围。

我将使用与语言无关的示例,因为自从我编写以来它已经永远存在了 PHP:

function someFunc() {
    var a = 0;

    return function() { // This is the closure
        a++;
        return a;
    } 
} 

var f = someFunc();

print(f()); // Prints 1
print(f()); // Prints 2
print(f()); // Prints 3

注意第一条评论。返回的函数是 a 变量的闭包。