什么是线程?什么是进程?

1.进程
进程是指在系统中正在运行的一个应用程序,程序一旦运行就是进程,
进程是系统资源分配的独立实体,且每个进程都有独立的地址空间
一个进程可以拥有多个线程,每个线程使用其所属进程的栈空间

进程之间的通信:
    ipc(管道,信号量,共享内存,消息队列)
    
2.线程
线程是进程的一个实体,是进程的一条执行路径
线程是cpu独立运行和独立调度的基本单位!

线程之间的通信
    线程可以直接读写进程数据段(如全局变量)来进行同信---需要进程同步和互斥
    的手段的辅助,以保证数据的一致性

3.多线程
    多线程是指从软件或者硬件上实现多个线程并发的技术
    
    *多线程的好处
        1.使用多线程可以把程序中占据时间长的任务放到后台去处理,如图片,视频的下载
        2.发挥多核处理器的优势,并发执行让系统运行更加的快,更流畅,用户体现更好
        
    *多线程的缺点
        1.大量的线程降低代码的可读性
        2.更多的线程需要跟多的内存空间
        3.当多个线程对同一个资源出现资源争夺的时候,要注意线程安全的问题
        
4.进程和线程选择取决以下几点:
    4.1需要频繁的创建销毁的优先使用线程,应为对进程来说创建和销毁一个进程代价太大
    4.2线程的切换速度太快,所以需要大量的计算,切换频繁使用线程,还有消耗时的操作,
    使用线程可以提高应用程序的相应速度
    4.3因为CPU系统的效率使用上线程更加的占优,所以可能需要发展到多机分布用进程,
    多核分布用线程
    4.4并行操作时候使用线程,如C/S架构的服务器端并发线程的相应用户请求
    4.5:需要更加稳定的安全时候,是和选择进程,需要速度时候,选择线程!

轉載https://blog.csdn.net/mlym521/article/details/82144452

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值