java中main方法启动的是一个进程还是一个线程

转载 2015年09月30日 13:45:26

出自:https://note.youdao.com/share/?id=85febc3ab33cc00102c024d04ef2ee09&type=note#/

是一个线程也是一个进程,一个java程序启动后它就是一个进程,进程相当于一个空盒,它只提供资源装载的空间,具体的调度并不是由进程来完成的,而是由线程来完成的。一个java程序从main开始之后,进程启动,为整个程序提供各种资源,而此时将启动一个线程,这个线程就是主线程,它将调度资源,进行具体的操作。Thread、Runnable的开启的线程是主线程下的子线程,是父子关系,此时该java程序即为多线程的,这些线程共同进行资源的调度和执行。

结论:java中main方法启动的是一个进程也是一个主线程,main方法里面的其他线程均为子线程

读过之后,想起来,大概如果main线程休眠,让出了cpu,那么其他线程也不能执行了。×错误

main休眠时,其他线程是可以执行的,但如果main线程是wait等待状态,其他子线程大概就不能执行了。

你可能感兴趣的:(java中main方法启动的是一个进程还是一个线程)