线程的理解问题

o0o_-_ 2019-09-12 02:48:00
是不是可以这样理解,假设在单核系统中,某个进程要完成两个任务;

在该进程上台后(假设使用时间片轮转法),第一次执行第一个任务,然后下一次执行第二个任务,如此反复。

这样理解对吗?
...全文
276 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
o0o_-_ 2019-09-24
  • 打赏
  • 举报
回复
引用 2 楼 SuperDay 的回复:
进程?你是说当我们启动一个进程了以后吧?每个进程都有个主线程,一般情况下这个主线程就这样一直执行直到进程关闭,然后主线程也随之终止运行。然而我们有时候需要等待一件事情发生,一般是接收某种输入信息,比如网络发来的数据,而又不想暂停主线程正在做的事情。这时候就可以启动另一个线程,专门处理网络数据收发。这个线程和主线程是并发的,实现上有可能是一个单核处理器上面的时间片轮转,也可能是一个多核或多CPU做处理,这部分的工作由OS进行调度。一般来说是不需要人工干预的,但有时候需要调优性能,需要最大程度地发挥CPU的处理能力,某些系统可以通过配置来实现一种调度策略,比方一个核或者CPU能够处理的上下限度,这取决于系统的功能

感谢大佬,讲的挺清楚的了
铖邑 2019-09-24
  • 打赏
  • 举报
回复
进程?你是说当我们启动一个进程了以后吧?每个进程都有个主线程,一般情况下这个主线程就这样一直执行直到进程关闭,然后主线程也随之终止运行。然而我们有时候需要等待一件事情发生,一般是接收某种输入信息,比如网络发来的数据,而又不想暂停主线程正在做的事情。这时候就可以启动另一个线程,专门处理网络数据收发。这个线程和主线程是并发的,实现上有可能是一个单核处理器上面的时间片轮转,也可能是一个多核或多CPU做处理,这部分的工作由OS进行调度。一般来说是不需要人工干预的,但有时候需要调优性能,需要最大程度地发挥CPU的处理能力,某些系统可以通过配置来实现一种调度策略,比方一个核或者CPU能够处理的上下限度,这取决于系统的功能
  • 打赏
  • 举报
回复
针对于 你说的 这种时间轮片的话,你是可以这么理解的,单核系统中,一个进程中包含了很多线程的话,都是一个接一个执行的,只不过执行时间很快,你直接观察不出来而已。
线程是最小的可执行单元而已,每个程序其实活动的部分都是线程,具体可以百度看看。
这个可以结帖吗

1,025

社区成员

发帖
与我相关
我的任务
社区描述
Linux /Unix kernel支持不同的硬件体系,X86, ARM, MIPS, 等等
社区管理员
  • CPU和硬件区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧