此文章为个人学习中的理解阐述,如有错误理解,欢迎指出,也仅为大家学习提供我的个人理解作为参考。
进程与线程
进程
1.以Windows系统为例,通常我们生成的程序存储在磁盘中,此时是没有运行的。
2.当我们双击打开后,电脑会将一个程序实例加载到内存(内存条)中,并给该程序赋予一个PID,表示唯一的进程标识符,此程序即为一个进程。
线程
3.在(2)中进程产生的同时,也会产生一个线程(假设该程序没有内部创建线程),用来运行该程序的主代码逻辑。
4.在主程序的线程中,会运行我们赋予在此线程中的程序逻辑,从程序的入口往下按照代码逻辑一步一步进行。
5.假设我们在主程序代码中,创建了一个新的线程NewThread(通过API实现),并在线程中赋予了另外的逻辑代码并启动,那么,当主程序在运行的新线程NewThread启动后,会重新开辟生成一个对应NewThread的线程,主程序继续往下执行自己应有的逻辑,新线程则会执行自己内部赋予的代码,两个线程独立完成自己的逻辑。(好比一条大河,在经过某个地域时,被人为划分出了一条支流,两条支流会自己并行流动,互不影响。)