文章链接
专业课-操作系统-线程/进程-线程相关
面5笔5既然 start() 方法会调用 run() 方法,为什么我们调用 start() 方法,而不直接调用 run() 方法?
这是一个基本的 Java 多线程面试题。
一般在 Java 中级面试的电话面试或一轮面试中遇到。
这道问题的答案是这样的:
当你调用 start() 方法时,它会新建一个线程然后执行 run() 方法中的代码。
如果直接调用 run() 方法,并不会创建新线程,方法中的代码会在当前调用者的线程中执行。