如何在unix中创建线程?

时间:2010-09-09 05:59:01

标签: multithreading fork unix

如何在unix编程中创建线程?

分叉和穿线有什么区别?

线程比分叉更有用吗?

4 个答案:

答案 0 :(得分:4)

通常使用POSIX threads或其API封装的其他技术。分叉启动新进程,线程将现有进程拆分为多个部分。线程导致共享的全局状态,根据具体情况可能有用,也可能没用。

答案 1 :(得分:3)

  1. pthread_create()

  2. 分叉创建两个进程,每个进程都有一个单独的控制线程。创建一个线程会在一个进程中创建一个额外的控制线程。

  3. 否 - 获得正确的线程应用程序通常比正确处理单独的进程更困难。并且相当大的余地。

答案 2 :(得分:2)

Forking创建当前进程的副本,而线程在同一进程中运行,通常用于在后台计算某些内容,因此应用程序似乎不会被冻结。

至于线程与分叉的有用性,除非你特别需要第二个进程,否则我会使用线程。

至于如何创建线程,我建议使用pthreads库。它适用于任何UNIX操作系统(Linux,BSD,Mac OS X),但相对较低。如果你想要更高级别的东西,请查看QT的QThread。

答案 3 :(得分:0)

1.在为所有资源和内存分配的Fork内核中。

2.在进程的线程拆分中共享进程的内存