multithreading - 什么是内核线程调度?

标签 multithreading

有人可以给我一个易于理解的内核线程分派(dispatch)的定义吗?或者如果两者没有区别的话,只是线程分派(dispatch)?

据我了解,它只是在当前事件线程等待另一个线程的锁时进行上下文切换,因此当该线程处于阻塞模式时,CPU 会执行其他操作。

但是我可能误解了。

最佳答案

它基本上是操作系统确定在任何给定点将众多事件线程中的哪一个发送(分派(dispatch))到 CPU 进行处理的过程。

每个操作系统都有自己的实现,但基本概念是按优先级保存线程的排序列表,并根据需要将它们分派(dispatch)给 CPU。添加时间分片,允许多个程序并发运行等。

关于multithreading - 什么是内核线程调度?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1976613/

相关文章:

c++ - 如何确保已读取所有管道缓冲区?

C++ 线程安全 vector .erase

java - 如何避免应用程序可能在其主线程上做太多工作

C++ 多线程 TCP 服务器问题

multithreading - @Stateless 或 @Singleton 而不是静态助手类?

multithreading - rust "future cannot be sent between threads safely"

multithreading - 阐明 OpenSSL 0.9.8L 并发支持 - 如果非并发完成,SSL 实例能否被多个线程使用?

java - 进程线程安全吗?

使用用户输入控制 POSIX 线程

c - 释放线程内存