进程的定义以及与线程的比较
首先来看下进程的定义以及与线程的区别 ,然后再看什么是进程以及进程的应用
进程:通俗理解一个运行起来的程序或者软件叫做进程
1.1 每次启动一个进程都想操作系统索要运行资源,进程是操作系统资源分配的基本单位
1.2 默认情况下启动一个进程默认只有一条线程,这个线程主线程, 线程是依附在进程里面的,没有进程就没有线程,进程可以有多个线程
1.3 如何理解进程:可以把进程想成公司,公司会给员工提供办公资源(办公电脑,办公桌椅等资源), 真正干活的是员工, 公司好比进程,员工线程
进程和线程的对比
2.1 进程: 每次启动一个进程都需要向操作系统索要运行资源,进程是操作系统资源分配的基本单位
2.2 线程: 执行代码的分支,线程是cpu调度的基本单位, 线程是依附在进程里面的,没有进程就没有线程,默认一个进程只有一个线程,但是可以开辟多个线程
2.3 进程不共享全局变量, 线程共享全局变量但是要注意资源竞争数据错误的问题, 可以使用线程同步或者互斥锁
2.4 多进程开发比单进程多线程开发稳定性要强, 因为某个进程死了不会影响其它进程的运行,但是单进程多线程开发,如果这个进程死了,那么进程中的所有线程都不能再运行了
2.5 多进程开发比单进程开发资源要分配的多,多线程可以利用进程中的资源,但是每次启动一个进程都需要向操作系统索要运行资源