2009-11-07 93 views
6

如果我我有一个类,它的run()方法休眠1000毫秒,然后打印“主题”。然后我从主程序启动该线程,然后让我的主程序立即睡眠2000毫秒,然后打印“主线程”。概念问题关于Java并发

能够保证所有的线程将主线程之前打印?

回答

16

都能跟得上。从概念上讲,它是可能你正在运行的系统会非常热闹,新的线程甚至没有得到机会运行任何主线程有机会睡,并打印“主线”前。在现实中是不太可能的,当然,但从根本上sleep协调原始。

+0

+1:睡眠根本没有保证。它可能甚至不会在请求的时间内休眠,因为它可能会中断。 – 2009-11-07 00:44:36

+0

在这种情况下,不能保证任何一条消息都将被打印。 ;) – 2009-11-07 01:19:35