JAVA线程简单问题

2025-06-29 01:22:32
推荐回答(2个)
回答1:

线程就是相当于另外在启动一个新的处理程序,在独立的运行。由于你这里没有使用到线程的同步,因此这两个线程的输出结果是不可预知的。你所希望的轮流的输出,只是其中的一种可能结果,而并不是程序每一次运行的固定输出。
建议你多运行几次程序看输出结果,应该是每一次的输出都是不一样的。

回答2:

多线程同时运行本就是无序的,后起来的线程先运行完全可能的,而且线程切换很有可能是杂乱无序的,这取决于context switch algorithm,按固定顺序执行会有额外的性能开销,会降低并发性。