定义一个函数private void waitForDone(){
synchronized (lock){
try {
while(!done) lock.wait();
} catch (InterruptedException e){
log.error(SYNC_ERROR);
}
}
}
是否正确,该函数作为其输入可调用,如下所示:
foo
我们是否需要任何类型特征来确保template< typename callable_t >
void foo( callable_t f )
{
// code that calls f
}
是可调用的?我会说“不”,因为如果我将f
传递给int
并尝试调用它,编译器将抛出错误。
您怎么看?