多线程面试题总结

做些总结。

1.关于线程:
线程是操作系统运行调度的基本单位。线程被包含在进程之中,是进程中的实际运作单位。

2.关于进程:
进程是操作系统资源分配的基本单位。进程是指在系统中正在运行的一个应用程序。进程是一个实体,每一个进程都有其独有的地址空间。

3.两者区别:
基本定义:进程是操作系统资源分配的基本单位,而线程是处理器任务调度执行的基本单位。

资源开销:创立进程需要独立的代码和数据空间,同时进程之间的切换会有较大开销。创立线程开销较小,同一类线程共享代码和数据空间,每个线程只拥有独立的栈,同时线程之间切换的开销较小。

内存分配:同一进程的线程共享本进程的地址空间和资源,而进程之间的地址空间和资源是相互独立的。

通信交流:线程间交流较容易,进程间交流较复杂。

程序安全:多进程程序较健壮。

4.多线程编程的作用:
提升效率:分两个方面。一是发挥多核处理器的优势。二是避免阻塞。
程序设计:方便建模。

5.互斥锁

6.条件变量

7.原子变量

8.call_once()函数

https://cloud.tencent.com/developer/article/1461308
https://cloud.tencent.com/developer/article/1461671
https://cloud.tencent.com/developer/article/1462561

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值