进程与线程的区别
根本区别:进程是操作系统资源分配的基本单位,线程是处理器任务调度和执行的基本单位
资源开销:每个进程都有独立的代码和数据空间,程序之间的切换会有较大开销;线程可以看做是轻量级的进程,同一类线程共享代码和数据空间,每个线程都有自己独立的运行栈和程序计数器,线程之间的切换开销较小
包含关系:线程是进程的一部分
影响关系:一个进程崩溃后,在保护模式下不会对其他进程产生影响,但是一个线程崩溃整个进程都死掉。(多进程比多线程健壮)
执行过程:每个独立的进程有程序运行的入口、顺序执行序列和程序出口。但是线程不能独立执行,必须依存在应用程序中,由应用程序提供多个线程执行控制。两者均可并发执行。
更多内容参考:https://blog.csdn.net/ThinkWon/article/details/102021274?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522161640758516780261960566%2522%252C%2522scm%2522%253A%252220140713.130102334…%2522%257D&request_id=161640758516780261960566&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2alltop_click~default-2-102021274.first_rank_v2_pc_rank_v29&utm_term=%E8%BF%9B%E7%A8%8B%E5%92%8C%E7%BA%BF%E7%A8%8B%E7%9A%84%E5%8C%BA%E5%88%AB