当前位置: 技术问答>linux和unix
Linux上面的线程实现还是clone方式吗?
来源: 互联网 发布时间:2016-09-08
本文导语: 在读apu,线程一直11.4举例结果 new thread:pid 6628 thread_id 1026 main thread:pid 6626 thread_id 1024 并解释Linux使用clone方式实现pthread_create, 但我在ubuntu上实验结果: main thread:pid 1833 tid 3024 new thread:pid 1833 tid 3028 这不都...
在读apu,线程一直11.4举例结果
new thread:pid 6628 thread_id 1026
main thread:pid 6626 thread_id 1024
并解释Linux使用clone方式实现pthread_create,
但我在ubuntu上实验结果:
main thread:pid 1833 tid 3024
new thread:pid 1833 tid 3028
这不都是1833吗,请问大家这是怎么回事?
new thread:pid 6628 thread_id 1026
main thread:pid 6626 thread_id 1024
并解释Linux使用clone方式实现pthread_create,
但我在ubuntu上实验结果:
main thread:pid 1833 tid 3024
new thread:pid 1833 tid 3028
这不都是1833吗,请问大家这是怎么回事?
|
1273 SYSCALL_DEFINE0(getpid)
1274 {
1275 return task_tgid_vnr(current);
1276 }
1429 SYSCALL_DEFINE0(gettid)
1430 {
1431 return task_pid_vnr(current);
1432 }
pid取的是task_struct中的group_leader的pid,tid取的是自己的pid
新内核引入了namespace,搞的比较复杂了,逻辑没有没原来简单