------- android培训、java培训、期待与您交流! ----------
进程是指一个内存中运行的程序,每个进程都有自己的一块独立内存空间,一个进程可以有多个线程。比如在Window中运行一个xx.exe就是一个进程。
Java程序的进程里有几个线程:主线程、垃圾回收线程(后台线程)。
线程指的是进程中的一个执行任务,一个进程可以执行多个线程,多个线程可以共享数据。
多进程:就是在操作系统中同时运行多个程序.......
多线程:在同一个进程中同时运行多个任务.......
一个进程至少有一个线程,为了提高效率,可以在一个进程中开启多个任务。
线程可以同时运行,但是通过程序运行的结果发现,虽然同时运行,但是每次结果都不一样。
因为多线程存在一个特性:随机性。
造成原因:CPU在瞬间不断切换去处理各个线程而导致的。
可以理解为多个线程在抢CPU资源。
线程具有许多传统进程所具有的特征,可以成为轻型进程。
而把传统的进程成为重型进程,它相当于只有一个线程在执行任务。在引入了线程的操作系统中,通常一个进程有若干个线程,至少有一个线程。
进程与线程的区别:
1、进程有独立的进程空间,进程中的数据存放空间,也就是堆空间与栈空间,它们是独立的。
2、线程的堆空间是共享的,栈空间是独立的,线程消耗的资源比进程小,相互之间可以影响的。