1 / 4
文档名称:

linux知识点复习总结.doc

格式:doc   大小:85KB   页数:4页
下载后只包含 1 个 DOC 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

linux知识点复习总结.doc

上传人:小雄 2021/5/15 文件大小:85 KB

下载得到文件列表

linux知识点复习总结.doc

文档介绍

文档介绍:四:thread
什么是线程的detach状态?怎样设置?
detach 状态:
一般情况下,线程终止后,其终止状态一直保留到其它线程调用pthread join获取它 的状态为止。
但是线程也可以被置为detach状态,这样的线程一旦终止就立刻回收它占用的所有 资源,而不保留终止状态。
不能对一个已经处于detach状态的线程调用pthread」oin,这样的调用将返回
EINVALo
设置方法:
对一个尚未detach的线程调用pthreadyozn或pthreaddetach都可以把该线程置为 detach状态,也就是
说,不能对同一线程调用两次pthread/o,,或者如果已经对一个线程调用了
pthreaddetach就不能再调用
pthreadjoin 了。
int pthread_detach(pthread_t tid);
返回值:成功返回0,失败返回错误号。
叙述函数pthread_join的功能。
函数pthreadjoin用来等待一个线程的结束,线程间同步的操作。
头文件:#include <>
函数定义:int p{hreadjoin[pthreadt th, void **value_ptr);
th:被等待线程的标识符
value_ptr:用户定义指针用来存储被等待结束线程的返回值,
调用该函数的线程将挂起等待,直到id为th的线程终止。
进程中使用 return> exit^ pthreadex/t pthreadcancei 分别起到什么作用?
return,如果thread线程通过return返回,value_ptr所指向的单元里存放的是 thread线程函数的返回值。
exit终止整个进程。如果进程中的任一线程调用了 exit,那么整个进程就会终止。
调用pthreadex壮终止自己,va/ueptr所指向的单元存放的是传给pthread_exit的 参数。
调用pthreadcance/终止同一进程中的另一个线程,va/ueptr所指向的单元里存放
的是常数
PTHREAD_CANCELED,艮町(void *)-1)。
解释关键字restrict的作用。
详细内容请参考:教学文档/pthread/O-
关键字restrict只用于限定指针。
该关键字用于告知编译器,所有修改该指针所指向内容的操作全部都是基于该指针 的,即不存在其它进行修改操作
的途径,这样的后果是帮助编译器进行更好的代码优化,生成更有效率的汇编代码。
线程都有哪些常用属性?在创建时和创建后都怎样进行设置?
线程的属性结构为pthreadattrt,,属性值不能直接设 置,须使用相关函数进行操
作,初始化的函数为pthreadattrinit,这个函数必须在pthread_create函数之前调
用。属性对象主要包括是否
绑定、是否分离、堆栈地址、堆栈大小、优先级。默认的属性为非绑定、非分离、 缺省的堆栈、与父进程同样级别
的优先级。
线程创建之前,通过各种属性设置函数来给结构体pthreadaitrt变量赋值,在创建 变量时将pthreadaitrt结构
体变量作为参数传入pthraed