scala 控制

本文介绍了一种在Scala中简化线程调用的方法。通过调整函数定义的方式,避免了在调用时需要显式写出箭头符号的不便,使得线程启动的代码更加简洁易读。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

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


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")

}


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值