为什么需要Java线程?

时间:2015-02-11 19:44:25

标签: java java-threads

我有一个普遍的问题。 我一直在阅读一本Java书,我遇到了一个使用Threads的程序。书中指出,线程用于多处理。我想知道如果我写:

Thread t=new Thread(new classname);
t.start;
//after it some GUI code to display the input received from user in run method

我覆盖run方法以获取用户的输入,然后,它是否等待输入然后执行GUI任务,如打开框架,或者它将同时执行两个任务。

1 个答案:

答案 0 :(得分:1)

他们会同时发生。 (除非使用锁或信号量阻止其中一个线程。)

如果gui线程依赖于另一个线程的输入处理,那么你将遇到竞争条件。所以你肯定想要阻止gui线程,直到另一个线程完成产生gui线程需要的任何东西。

至于为何需要线程,那么就可以同时完成任务,这样程序就可以更快地完成工作。