关于线程与进程

 线程与进程:

进程:是并行执行的程序在执行过程中进行分配和管理资源的基本单位。

线程:是进程的一个执行单元,比进程更小的独立运行的基本单位,也被称为轻量级进程,线程的引入减小了程序并发执行时的损耗,提高了操作系统的并发性能。

进程分为单线程进程和多线程进程,单线程微观上只有单一的执行过程。多线程进程微观上有多个执行操作。

从地址空间上看,同一进程的线程共享本进程的地址空间,但是进程之间的资源是独立的。

从资源拥有的角度来看,同一进程内的线程共享本进程的资源,如IO、内存、CPU等,但是进程之间的资源是独立的。

一个进程崩溃后,在保护模式下不会对其他进程产生影响。但是一个线程崩溃整个进程都会死掉,所以多进程要比多线程健壮、稳定。

两者关系:

       1、一个线程只能属于一个进程,而一个程序可以有多个线程,但至少有多个线程。

       2、资源分诶给进程,统一进程的所有线程共享该进程的所有资源。

       3、CPU分给线程,即真正在CPU上运行的是线程。

       在界面进行复杂处理时一般使用多线程,

 线程处理

新建一个Qthread类,C++下的C++ Class,基类不能选择Widget因为线程不是控件,基类选择Qobject再改为Qthread,

函数名前的virtual代表虚函数,访问权限为保护类型。

养成关闭线程的习惯,线程号是有限的,使用quit函数关闭线程,在使用wait函数等待当前线程处理完毕,将线程彻底关闭。

在ui的主线程中进行设定好的不复杂的线程操作,并启动多线程,注意多线程的操作不能直接调用run函数,而是使用start间接调用run函数,thread.润()。

在多线程设计界面,run函数为虚函数,与主线程不在一个线程,同时设置线程完成标志信号,用于通知主线程的多线程结束,

原文链接: https://www.cnblogs.com/luxinshuo/p/12316112.html

欢迎关注

微信关注下方公众号,第一时间获取干货硬货;公众号内回复【pdf】免费获取数百本计算机经典书籍;

也有高质量的技术群,里面有嵌入式、搜广推等BAT大佬

    关于线程与进程

原创文章受到原创版权保护。转载请注明出处:https://www.ccppcoding.com/archives/329835

非原创文章文中已经注明原地址,如有侵权,联系删除

关注公众号【高性能架构探索】,第一时间获取最新文章

转载文章受原作者版权保护。转载请注明原作者出处!

(0)
上一篇 2023年3月1日 下午5:18
下一篇 2023年3月1日 下午5:19

相关推荐