首页 > 代码库 > 初学scala4——trait混入
初学scala4——trait混入
最近在调优程序,总要对比程序执行的时间,之前都是在程序片段前后加上时间然后相减。
今天看了别人写的代码,使用了trait混入,减少了很多同样代码,mark一下,也加深对trait混入的理解。
trait TMetrics { def timeIt[T](desc: String)(f: () => T): T = { println(s"Thread:${Thread.currentThread().getId} | BEGIN | ${desc} | ${new Date()}") val res = f.apply() println(s"Thread:${Thread.currentThread().getId} | END | ${desc} | ${new Date()}") res } } object MeTest extends TMetrics with App{ timeIt("Test")(() => TimeUnit.SECONDS.sleep(3)) }
执行结果
Thread:1 | BEGIN | Test | Mon Feb 06 20:37:06 CST 2017 Thread:1 | END | Test | Mon Feb 06 20:37:09 CST 2017
初学scala4——trait混入
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。