Multithreading 单线程进程是否只包含一个线程?

Multithreading 单线程进程是否只包含一个线程?,multithreading,multiprocessing,single-threaded,Multithreading,Multiprocessing,Single Threaded,有人能对单线程和多线程进程给出更多解释吗 单线程进程是否只包含一个线程?或者这意味着该进程可以包含多个线程,并且一次只能运行一个线程,然后在它们之间切换上下文?如果我在单核处理器上运行java程序,那么第二个是真的吗? 有人能进一步解释一下吗?单线程进程就是单线程进程。多线程进程是具有多个线程的进程 命名是基于静态配置的,也就是说,当执行被挂起时,您可以查看流程,并说它是单线程的还是多线程的。就术语而言,线程是在单核上执行还是在多核上执行并不重要 具有多个线程且所有线程都在单个核上执行的进程

有人能对单线程和多线程进程给出更多解释吗

单线程进程是否只包含一个线程?或者这意味着该进程可以包含多个线程,并且一次只能运行一个线程,然后在它们之间切换上下文?

如果我在单核处理器上运行java程序,那么第二个是真的吗?


有人能进一步解释一下吗?

单线程进程就是单线程进程。多线程进程是具有多个线程的进程

命名是基于静态配置的,也就是说,当执行被挂起时,您可以查看流程,并说它是单线程的还是多线程的。就术语而言,线程是在单核上执行还是在多核上执行并不重要

具有多个线程且所有线程都在单个核上执行的进程可能会有争用条件,具有多个线程且跨多个核执行的进程也可能有争用条件。区分这两种情况对于性能评估很重要,但对于正确性却适得其反(即,在考虑潜在竞争时,假设每个线程位于单独的CPU上是很有用的)

单线程程序是只使用一个线程的程序。进程可能有额外的线程;对于Java运行时的示例,您可以期望有一个终结器线程,可能还有一个或多个用于垃圾收集的线程。它是在多线程进程中运行的单线程程序


(我听说“进程”被定义为“正在执行的程序的抽象”,即编写一个程序,然后在进程中执行。)

单线程并不意味着单核、单进程。
单线程进程包含以单个序列执行指令。换句话说,一个命令是一次处理多个进程

单CPU或核心与多CPU与进程中的线程数正交(所有四个选项都可用)。