inline function

This commit is contained in:
luming 2021-07-01 15:17:57 +08:00
parent 6f3a381e3d
commit 7df2044775

View File

@ -0,0 +1,29 @@
package senior.Lambda
import java.util.concurrent.locks.Lock
import java.util.concurrent.locks.ReentrantLock
/**
* 内联函数
*
*
*/
class InlineFunc {
}
fun main(args: Array<String>) {
var lock = ReentrantLock()
check(lock) {
println("内联函数")
}
}
inline fun <T> check(lock: Lock, body: () -> T): T {
lock.lock()
try {
return body()
} finally {
lock.unlock()
}
}