Pthreads系统中建立线程的主要方式是调用pthread_create,如果进程的信号通知机制设为SIGEV_THREAD,则当进程收到一个POSIX信号时也会创建线程。其它的创建方式也根据系统而不同。
有关新线程建立后,处于就绪状态,受调度机制的限制,新线程可能需要停留一段时间后才被执行。 而且调用pthread_create创建线程返回和新线程的执行函数这两个不存在同步的关系(即两个不需要依赖谁),有可能新线程在pthread_create返回之前就已经运行了,更或者在返回之前就已经运行完毕了。
在大多数系统中,初始线程(main)运行在默认进程 堆栈上,这个堆栈可以增长到足够的尺寸,而在某些实现中,普通线程的堆栈空间是受限的。
阅读(442) | 评论(0) | 转发(0) |