多线程和多任务处理

时间:2011-03-13 06:53:58

标签: linux

你能告诉我多任务和多线程(Linux)有什么不同吗?

4 个答案:

答案 0 :(得分:1)

线程与父进程在同一地址空间中执行,而任务则不在。因此,一个进程创建的多个线程可以访问其父进程的内存。

答案 1 :(得分:1)

Linux中最大的区别在于线程共享大部分地址空间。 IE:如果一个线程对内存中的内容进行了更改,则其他线程可以看到(并受其影响)该更改。

在其他操作系统中,差异更为深远。但在Linux中,线程本身几乎(但不是很完全)进程 - 它们甚至都有PID。

答案 2 :(得分:0)

多任务,在操作系统中,允许用户一次执行多个计算机任务(例如应用程序的操作)。操作系统能够跟踪您在这些任务中的位置,并从一个到另一个,而不会丢失信息

多线程是程序或操作系统进程一次管理多个用户使用的能力,甚至可以管理同一用户的多个请求而无需多个副本计算机中运行的程序

答案 3 :(得分:0)

多任务处理:运行不同的程序,这些程序共享相同的 内存,但在不同的 切片 中内存的

多线程:在同一个程序中运行不同的线程,共享相同的 slice 内存。

密切使用两者会为CPU做更多的工作,因为CPU必须先调度并权衡哪一个首先工作,另一个副作用是每个任务/线程将获得更少的CPU资源和内存来分享它们。

利用这些技术的最佳方法是确保在绝对必要时使用它们。