前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >编程中的并发与锁

编程中的并发与锁

作者头像
韩旭051
发布2020-11-24 12:31:51
2730
发布2020-11-24 12:31:51
举报
文章被收录于专栏:刷题笔记刷题笔记

【计算机知识串讲】编程中的并发与锁

https://www.bilibili.com/video/BV1Ng4y1q7bm 学习笔记

南北桥

南桥

带宽比较低的设备

USB 鼠标 键盘

北桥

高速访问 带宽高的设备

CPU RAM PCI-E

CPU常见参数

架构

  • X86 PC 服务器
  • ARM 只能手机移动设备
  • MIPS 小型路由器

频率

5GHz 每秒钟进行5G次基础指令运算

核心数和线程数

一个cpu芯片可以集成多个 cpu 核心,可以并行处理任务。一般核心数=线程数

cache

CPU的缓存是对主存的高速缓存。

CPU状态查看 linux

  • cat /proc/cpuinfo
  • top
  • vmstat
    • us 用户使用
    • sy 系统使用
    • id 空闲CPU
    • wa 等待IO 的CPU
    • st 虚拟机
  • uptime 电脑运行了多长时间 负载
    • load average 平均负载
    • 正常状态 比当前CPU低

进程 线程 协程

进程

资源调度管理的最小单位

进程中的所有线程共享一套地址空间

线程

多线程 在CPU阻塞情况下很有用

线程的五种状态 只有运行中占用 CPU 资源

线程创建销毁 和 切换

线程池 进行管理 线程的 创建 和 销毁 减少了消耗

协程

协程能够减少一部分的 线程切换

协程,英文Coroutines,是一种比线程更加轻量级的存在。正如一个进程可以拥有多个线程一样,一个线程也可以拥有多个协程。

协程不是进程或线程,其执行过程更类似于子例程,或者说不带返回值的函数调用

Synchronized 关键字

如果是 先state=0;然后 持有者 = null;

state 等于零 之后 会调用 lock()

持有者 = null 和 lock 的 持有者 = 当前线程 可能会 冲突

但是 先 持有者 = null; 再 state = 0; 就会避免这个问题的发生。

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2020-11-07 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 【计算机知识串讲】编程中的并发与锁
    • 南北桥
      • 南桥
    • 北桥
      • CPU常见参数
        • 架构
        • 频率
        • 核心数和线程数
      • cache
      • CPU状态查看 linux
        • 进程 线程 协程
          • 进程
        • 线程
          • 线程创建销毁 和 切换
          • 协程
        • Synchronized 关键字
        领券
        问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档