并发++++++

通信方式: 

管道

 匿名管道 pipe:具有亲缘关系的父子进程间通信

 命名管道 named pipe:均可

信号:软件层次 对中断机制的模拟,通知进程某件事情发生 进程收到信号与处理器

消息队列

共享内存:多个进程可访问,及时看到对方进程数据的更新,同步操作 信号量 互斥锁

信号量:进程间 线程间

套接字:socket 进程间通信机制,网络不同机器进程通信,同一机器可unix domain socket

帮忙记忆:没有逻辑道理

  管道信号 携带 信号量 进入了 消息队列 ,在 套接字 的帮助下 得到了 共享内存

开启线程

new Thread();

implements Runnable

   callable

 stop();  interrupt();

run和start

currentHashMap initTable使用Thread.yield

     暂时让出cpu,让单个线程去初始化

调度:

协同式:自己执行完去通知系统切换另一个线程

抢占式:  系统决定是否切换执行时间

   Thread.yield让cpu执行时间,没有办法获取执行时间,设置优先级可容易不决定

优先级:java线程映射到系统原生线程上,调度最终取决于操作系统,优先级不能11对应

内核线程实现:1:1 直接映射  多系统调用 上下文切换  线程2000,hotspot 

用户线程实现:1:N  语言负责线程生命周期

混合实现:N:M 

相关推荐

  1. Rust 并发

    2024-04-04 07:44:01       44 阅读
  2. Python并发

    2024-04-04 07:44:01       56 阅读
  3. C++ 并发编程 | 并发世界

    2024-04-04 07:44:01       61 阅读
  4. 并行并发有什么区别?

    2024-04-04 07:44:01       37 阅读
  5. Python并发编程

    2024-04-04 07:44:01       58 阅读
  6. epoll并发编程

    2024-04-04 07:44:01       52 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-04-04 07:44:01       75 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-04-04 07:44:01       80 阅读
  3. 在Django里面运行非项目文件

    2024-04-04 07:44:01       64 阅读
  4. Python语言-面向对象

    2024-04-04 07:44:01       75 阅读

热门阅读

  1. List Set Map 的值能否为NUll?

    2024-04-04 07:44:01       33 阅读
  2. 2024水会|全国水科技大会第一版日程正式公布

    2024-04-04 07:44:01       31 阅读
  3. 在Gitee上创建新仓库

    2024-04-04 07:44:01       28 阅读
  4. Spring Boot整合Kafka+SSE实现实时数据展示

    2024-04-04 07:44:01       31 阅读
  5. 数据开发-面试真题。

    2024-04-04 07:44:01       40 阅读
  6. 【c++基础】数池塘(四方向)

    2024-04-04 07:44:01       31 阅读
  7. SpringBoot单元测试

    2024-04-04 07:44:01       41 阅读