linux函数之pthread_create
2014-08-19 14:59
375 查看
头文件
函数声明
编译链接参数
-pthread[1]
返回值
若线程创建成功,则返回0。若线程创建失败,则返回出错编号,并且*thread中的内容是未定义的。[1] 返回成功时,由tidp指向的内存单元被设置为新创建线程的线程ID。attr参数用于指定各种不同的线程属性。新创建的线程从start_rtn函数的地址开始运行,该函数只有一个万能指针参数arg,如果需要向start_rtn函数传递的参数不止一个,那么需要把这些参数放到一个结构中,然后把这个结构的地址作为arg的参数传入。
linux下用C语言开发多线程程序,Linux系统下的多线程遵循POSIX线程接口,称为pthread。
由 restrict 修饰的指针是最初唯一对指针所指向的对象进行存取的方法,仅当第二个指针基于第一个时,才能对对象进行存取。对对象的存取都限定于基于由 restrict 修饰的指针表达式中。
由 restrict 修饰的指针主要用于函数形参,或指向由
malloc() 分配的内存空间。restrict 数据类型不改变程序的语义。 编译器能通过作出
restrict 修饰的指针是存取对象的唯一方法的假设,更好地优化某些类型的例程。
参数
第一个参数为指向线程标识符的指针。第二个参数用来设置线程属性。
第三个参数是线程运行函数的起始地址。
最后一个参数是运行函数的参数。
注意事项
因为pthread并非Linux系统的默认库,而是POSIX线程库。在Linux中将其作为一个库来使用,因此加上 -lpthread(或-pthread)以显式链接该库。函数在执行错误时的错误信息将作为返回值返回,并不修改系统全局变量errno,当然也无法使用perror()打印错误信息。
2示例编辑
输出线程标识符
相关文章推荐
- linux 线程创建函数pthread_create的几个传参方式
- Linux 的pthread_create 和 pthread_join 函数的一些新的理解
- linux编程之pthread_create函数
- linux 线程创建函数pthread_create的几个传参方式
- pthread_create是类Unix操作系统(Unix、Linux、Mac OS X等)的创建线程的函数。
- LINUX中使用PTHREAD_KILL函数测试线程是否存活的例子
- linux 下线程使用(使用pthread_create)
- Linux中pthread_exit函数设置是否合理?
- pthread_create 函数的安全使用
- pthread_join函数及linux线程
- [转]pthread_create函数编译时报错:undefined reference to 'pthread_c...
- linux 下线程使用(使用pthread_create)转
- eclipse 函数编译时报错:undefined reference to `pthread_create’
- linux下添加pthread系列函数原型
- linux中使用pthread_kill函数测试线程是否存活
- pthread_join函数及linux线程
- 编写线程函数时,链接时报错:undefined refrence to 'pthread_create '
- pthread_join函数及linux线程转
- linux中使用pthread_kill函数测试线程是否存活的例子
- Sample - Linux下演示pthread、fork等函数