关于线程的一些术语

并发:同一时刻只能有一条指令执行,但多个进程指令被快速轮换执行,使得在宏观上具有多个进程同时执行的效果。
总结一句:看起来同时发生,单核
在这里插入图片描述
假设CPU转一圈1ms 因为人的反应时间 看起来每个程序同时执行一样,实际的在1ms内每个应用程序只执行了0.2ms的时间。

并行:同一时刻,有多条指令在多个处理器上同时执行。
总结一句:真正的同时发生 多核

同步:彼此有依赖关系的调用不应该“同时发生”,而同步就是要阻止那些“同时发生”的事情。

总结一句:阻止事件同时发生,就是一种机制

在这里插入图片描述
Record记录变量的变化(例如一个条目),如果add函数和delete函数同时被调用,那变量record是加1还是减1呢。这时就需要一个机制来处理了,比如add函数在调用record变量,那么就把record变量锁住(锁的作用就是不让别人去使用),所以一旦add函数调用record变量并且锁住了变量,即使delete函数过来了,也调用不了record变量,因为变量被锁住了。
这个锁就是一个同步机制,为了防止事件同时发生。

异步:异步的概念和同步相对,任何两个彼此独立的操作是异步的,它表明事情独立的发生。
总结一句:彼此独立的操作都是异步的。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
1. 进程:进程是计算机中正在运行的程序的实例。它是操作系统进行资源分配和调度的基本单位,拥有独立的内存空间和执行环境。 2. 线程线程是进程中的一个执行单元,是程序执行的最小单位。一个进程可以包含多个线程,它们共享进程的资源,但每个线程有自己的执行路径。 3. 状态:线程和进程都有不同的状态,常见的有以下几种: - 就绪状态:线程已经创建,但还没有开始执行。 - 运行状态:线程正在执行。 - 阻塞状态:线程暂时停止执行,等待某个条件满足后再继续执行。 - 终止状态:线程执行完毕或者出现异常而终止。 4. 阻塞:阻塞是指线程暂时停止执行,等待某个条件满足后再继续执行。常见的阻塞情况包括等待输入/输出完成、等待锁、等待其他线程完成等。 5. 优先级:线程的优先级决定了线程在竞争CPU资源时的优先级别。优先级高的线程会更有可能被调度执行,但并不保证一定会被执行。 6. 同步:同步是指多个线程之间按照一定的顺序执行,以避免出现数据不一致或者并发访问共享资源的问题。常见的同步机制包括使用锁、信号量、条件变量等。 7. 死锁:死锁是指两个或多个线程互相持有对方需要的资源,导致它们都无法继续执行的状态。这种情况下,线程会一直等待对方释放资源,从而陷入无限等待的状态。 8. 守护:守护线程是一种特殊的线程,它的生命周期与进程的生命周期相关联。当所有的非守护线程结束时,守护线程也会自动结束。守护线程通常用于执行一些后台任务,如垃圾回收等。 9. 线程安全:线程安全是指多个线程同时访问某个共享资源时,不会出现数据不一致或者并发访问的问题。为了实现线程安全,可以使用同步机制或者使用线程安全的数据结构。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值