Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/multithreading/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Multithreading 多道程序设计、多线程和并行处理?_Multithreading_Parallel Processing - Fatal编程技术网

Multithreading 多道程序设计、多线程和并行处理?

Multithreading 多道程序设计、多线程和并行处理?,multithreading,parallel-processing,Multithreading,Parallel Processing,我想知道以下定义之间是否有细微差别: 多道程序设计 多线程 并行处理 据我所知,我们正在使用多线程来实现多道程序设计。并行处理应该与多道程序设计相同,还是与硬件相关 感谢多道程序设计描述了您可以在一台计算机上同时运行多个程序(与旧的eg-DOS系统相比,在旧的eg-DOS系统中一次只能运行一个程序)(有时也称为多程序设计)-> 多线程在描述上必须有不同的理解:-> 硬件多线程或体系结构:处理器能够并行运行多个线程(实际上,反例:多道程序设计) 软件多线程:是指当一个进程由多个线程组成时,这些

我想知道以下定义之间是否有细微差别:

  • 多道程序设计
  • 多线程
  • 并行处理
据我所知,我们正在使用多线程来实现多道程序设计。并行处理应该与多道程序设计相同,还是与硬件相关


感谢多道程序设计描述了您可以在一台计算机上同时运行多个程序(与旧的eg-DOS系统相比,在旧的eg-DOS系统中一次只能运行一个程序)(有时也称为多程序设计)->

多线程在描述上必须有不同的理解:->

硬件多线程或体系结构:处理器能够并行运行多个线程(实际上,反例:多道程序设计)

软件多线程:是指当一个进程由多个线程组成时,这些线程彼此并不独立,就像进程一样,特别是那些线程在处理相同数据时可能会有竞争条件(->)


并行处理描述了一些(>1)CPU以任何形式协同工作。这包括一台具有多核的PC、一台具有多个处理器(如卡上)的服务器,甚至是一个计算机网络—>

多道程序设计描述了您可以在一台计算机上同时运行多个程序(与旧的eg DOS系统相比,前者一次只能运行一个程序)(有时也被称为mutlitasking)->

多线程在描述上必须有不同的理解:->

硬件多线程或体系结构:处理器能够并行运行多个线程(实际上,反例:多道程序设计)

软件多线程:是指当一个进程由多个线程组成时,这些线程彼此并不独立,就像进程一样,特别是那些线程在处理相同数据时可能会有竞争条件(->)


并行处理描述了一些(>1)CPU以任何形式协同工作。这包括一台具有多核的PC、一台具有多个处理器(如卡上)的服务器,甚至是一个计算机网络->我通常看到你的第二和第三个术语使用的方式:

并行处理指的是两个或多个线程同时运行,每个线程使用自己的数据。也就是说,除了启动和停止之外,几乎没有同步问题。多线程指的是几乎相同的事情,只是线程共享数据,必须非常小心这就是,同步就是一切


正确的并行处理并不比运行单个线程困难多少。(大多数平台提供各种支持以帮助简化)。多线程处理是一项非常艰巨的工作。

我通常看到您的第二和第三个术语的用法:

并行处理指的是两个或多个线程同时运行,每个线程使用自己的数据。也就是说,除了启动和停止之外,几乎没有同步问题。多线程指的是几乎相同的事情,只是线程共享数据,必须非常小心这就是,同步就是一切

正确的并行处理并不比运行单个线程困难多少。(大多数平台提供各种支持以帮助简化。)多线程处理是一项非常艰巨的工作