假如依据CPU的功能特点进行多线程编程

J2EE 码拜 8年前 (2016-03-16) 880次浏览
cpu在相似于播放视频读取文件能否在一直计算(占用)?
例如本人在播放电影同时做别的操作,那么本人在播放电影时CPU能否一致在占用,假如没有占用,那么播放电影的功能是播放器本人读取视频文件?假如cpu被播放程序占用,那么其他线程用CPU时(时间片?)是不是要抢占cpu的控制权,但是这样交替执行,实际CPU的执行总时间是一定的,怎么会提高性能?
多线程本人知道可以使多次提交不堵塞,但是对于CPU的“空闲时间”“效率”以及“读取文件时不占用cpu”这些方面还不甚了解,
本人觉得只有了解这些CPU的运行原理才能准确把握什么时候用多线程等以提高cpu的使用效率
请帮解答一下怎么样利用多线程充分利用CPU
最好能说说CPU执行程序的特点(例怎么样时用CPU何时空闲等)
解决方案

40

本人觉得cpu原理和多线程没关系
使用多线程会让程序执行更快是应为,程序运行的时候都是io操作,内存,磁盘,或网络,而现代cpu的运行速度远远高于上面3种io的速度。所以,假如是单线程的话,cpu大部分时间都是用来等待io操作。
多线程的好处就是在更加充分的利用cpu,让多个任务同时进行,某一个线程等待io的时候,cpu可以处理其他线程的计算任务。
至于线程阻塞调度,那都是cpu的硬件指令和系统级别的事。不太了解。

CodeBye 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权 , 转载请注明假如依据CPU的功能特点进行多线程编程
喜欢 (0)
[1034331897@qq.com]
分享 (0)