就是一般的函数调用,先调用run,输出pong,然后继续向下执行,输出ping。
结果肯定是pongping。既然用了线程,就不应该用t.run();你用t.start();替换试试,结果输出就不一样了。为了看结果比较明显,可以在pong()中Thread.sleep一段时间。如果用t.run(),无论sleep多长时间,结果都是pongping,如果用t.start(),结果就很可能是pingpong。线程
结果肯定是pongping。既然用了线程,就不应该用t.run();你用t.start();替换试试,结果输出就不一样了。为了看结果比较明显,可以在pong()中Thread.sleep一段时间。如果用t.run(),无论sleep多长时间,结果都是pongping,如果用t.start(),结果就很可能是pingpong。线程
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货