Fra*_*eil 1 scala higher-order-functions
我正在使用metrics-scala库,并且无法理解为什么下面的两个调用表现完全不同
// method 1
writeTimer.time(() => {
// expensive operation
})
// method 2
writeTimer.time {
// expensive operation
}
Run Code Online (Sandbox Code Playgroud)
在方法1的情况下,从不调用昂贵的操作,而在方法2中,它是.
writeTimer是一个实例com.yammer.metrics.Timer,其中time方法声明为:
/**
* Runs f, recording its duration, and returns the result of f.
*/
def time[A](f: => A): A
Run Code Online (Sandbox Code Playgroud)
我刚刚在我的代码中解决了一个错误,我必须使用方法2来使其工作.
| 归档时间: |
|
| 查看次数: |
101 次 |
| 最近记录: |