Thread,Thread.currentThread()和this

1,区别
Thread.currentThread().sleep(2000);
Thread.sleep(2000);
本质上来讲, 其实是没有区别的,其功效完全一样。不过呢, 一些代码检查工具会认为  前者有点问题。
前者其实是早期程序员的一个通用的写法, 无益也无害。 已经成为了一个不那么好的习俗了吧


2,Thread.currentThread()与this的区别
在线程的run 方法内部, Thread.currentThread()与this 其实是一个意思(除非你手动执行run方法,而不是通过启动线程的方式)。 不过呢, 其他的某些方法或场合,却可能出现不一致。
一般来说,Thread.currentThread() 用于不方便使用this 的场合。 Thread.currentThread() 明确表明了它所针对的对象是 当前线程! 不是this! 当然,如果碰巧this 就是当前线程, 那也是没毛病的。
发布了17 篇原创文章 · 获赞 2 · 访问量 1万+

猜你喜欢

转载自blog.csdn.net/qidaorenzhe/article/details/103367156