scala 控制

如下函数在线程中执行某段代码:


def runThread(block:()=>Unit){

      new Thread{

orverride def run(){block()}

}.start()

}

这段代码以类型为()=>Unit的函数的形式给出。不过,当你调用该函数时,需要写那么一段不优美的()=>:

runInThread(()=>println("Hi");Thread.sleep(1222);println("bye"))


要想在调用中省掉()=>,可以使用换名调用表示法:在参数声明和调用该函数参数的地方略去(),但保留=>:

def runInThread(block:=>Unit){

  new Thread{

orverride def run(){block()}

}.start()

}

这样一来,调用代码就变成了runInThread{println("")

;Thread.sleep(1222);println("bye")

}


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值