首页 > 代码库 > 常见的多线程编程模型
常见的多线程编程模型
1.基本概念:sleep,join,yied,优先级.
2.进程,线程:独立的内存空间,内存地址,不会相互影响。
3.数据结构:(共享资源的软件模拟)-队列,
4.并发控制:信号量机制(硬件机制原理),软件实现(锁机制-比如读写分离,基于二维的锁兼容性)
5.障碍器,信号量,锁
6.CPU密集型--计算,I/O密集型--传输(网络或者文件)--TCP或者串口等--阻塞和非阻塞(读取-写入-更新--这就是一个原子操作或者微命令)
编程模型:
1.while(true) {new Thread()}-单一主线程和多任务任务线程----请求都在队列(共享)
2.while(true) {ThreadPool}-单一主线程和线程池任务----------请求都在队列(共享)
如下图所示:上述都是单进程多线程模型借助队列共享资源
3.IO的多路复用:比如电视信号就是一种复用,信道的频率不一致
同步非阻塞:处理后的结果用户自己要处理
异步非阻塞:处理后的结果自动通知用户
共同点:分发器,处理器
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。