多线程与多进程概念篇

并发

概念:两个或多个任务(独立的活动)同时发生(进行);一个程序同 时执行多个任务。以往计算机(单核)同一时间只能执行一个任务;由操作系统调度,每秒进行多次“任务切换”。

进程

概念:一个可执行程序运行起来了,就创建了一个进程;运行起来的可执行程序。

线程

  1. 每个进程,都有一个主线程,且只有一个主线程;主线程生命周期与进程生命周期相同。理解为一条代码的执行通路;
  2. 除主线程外,我们可以通过自己写代码创建新的线程,其他线程走不同的路,甚至不同的地方放。(同一时刻做不同的事);
  3. 线程切换:线程不是越多越好,每个线程需要栈空间(1M)需要保存很多中间状态,切换会消耗本该程序运行的时间。

并发的实现

  1. 多进程实现并发;(进程间的通信:同一电脑:管道、文件、消息队列,共享内存。不同电脑:socket通信技术)。
  2. 在单独的进程中,创建多个线程实现并发,创建除主线程之外的线程。(轻量级的进程,每个线程有自己独立的运行路径,每一个进程中的所有线程共享地址空间-共享内存;全局变量、指针、引用都可以在线程间传递,多线程开销小于多进程)

总结

和进程相比,线程有如下优点:
a.线程启动速度快,更轻量级;
b.系统资源开销小,执行速度快;
缺点:
使用有一点难度,要小心处理数据的一致性问题。
链接: link.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值