ChinaUnix.net
相关文章推荐:

pthread 线程返回

线程T阻塞在pthread_cond_wait, 然后我用pthread_cancel(T),返回0。调用pthread_join之后返回0,线程返回-1。 请问这是怎么回事 ?在pthread_join之后可以获取错误码吗 ?

by whaoinfo - Linux环境编程 - 2014-03-19 16:22:23 阅读(696) 回复(0)

相关讨论
by yulihua49 - C/C++ - 2010-09-11 23:01:44 阅读(3450) 回复(4)
by l.darkfire - BSD - 2006-08-23 16:03:12 阅读(3106) 回复(0)

本帖最后由 iw1210 于 2013-02-25 14:17 编辑 线程ID可以为0么?如果pthread_create失败,第一个参数返回什么值?返回0么? man 没有说返回什么啊 int pthread_create(pthread_t*restrict tidp,const pthread_attr_t *restrict_attr,void*(*start_rtn)(void*),void *restrict arg);

by iw1210 - C/C++ - 2013-02-26 15:01:06 阅读(6276) 回复(13)

1 pthread_creat.c /* *gcc thread_creat2.c -o thread_creat2 -lpthread */ #include pthread.h> #include stdio.h> /* print_function 的参数 */ struct char_print_parms { /* 用于输出的字符 */ char character; /* 输出的次数 */ int count; }; /* 按照 PARAMETERS 提供的数据,输出一定数量的字符到stderr。 * PARAMETERS 是一个指向 struct char_print_parms 的指针 */ void* char_print (vo...

by tdh2002 - Linux文档专区 - 2010-02-03 15:27:06 阅读(945) 回复(0)

原文 一、创建与销毁 1、线程创建 1.1 线程与进程 相对进程而言,线程是一个更加接近于执行体的概念,它可以与同进程中的其他线程共享数据,但拥有自己的栈空间,拥有独立的执行序列。在串行程序基础上引入线程和进程是为了提高程序的并发度,从而提高程序运行效率和响应时间。 线程和进程在使用上各有优缺点:线程执行开销小,但不利于资源的管理和保护;而进程正相反。同时,线程适合于在SMP机器上运行,而进程则可以跨机器...

by davycu - Linux文档专区 - 2009-06-10 14:03:10 阅读(767) 回复(0)

pthread线程取消 第二春刚来的时候,和我讨论过一个关于程序多线程的结构的问题,打算采用pthread_cancel来处理,为了满足下面的要求,于是有了下面的代码:) 前两天再和春讨论,我发现春懂的比我懂的多多了:( 线程取消并不常用,通常做为多线程编程中的高级话题,更为详细的描述请看多线程程序设计>>一书,此书是多线程编程的大宝典呀!对各对概念做了详细的描述。此外,环境高级编程>>涉及了大量posix中并未详述的...

by lxcrist - Linux文档专区 - 2009-04-23 16:27:08 阅读(857) 回复(0)

pthread线程堆栈 先来讲说线程内存相关的东西,主要有下面几条: 进程中的所有的线程共享相同的地址空间。任何声明为static/extern的变量或者堆变量可以被进程内所有的线程读写。一个线程真正拥有的唯一私有储存是处理器寄存器。线程栈可以通过暴露栈地址的方式与其它线程进行共享。 有大数据量处理的应用中,有时我们有必要在栈空间分配一个大的内存块或者要分配很多小的内存块,但是线程的栈空间的最大值在线程创建的时候...

by lxcrist - Linux文档专区 - 2009-04-23 16:26:31 阅读(1863) 回复(0)

创建线程之后调用pthread_detach(pid); 就吧线程设置程分离状态。 看网上的解释把线程设置程分离状态当线程结束后自动释放线程的资源,(也就是不用调用pthread_join()) 请问线程分离状态和不分离状态,都在什么时候用比较恰当(不知道设置分离状态有什么用)。

by ruchong - C/C++ - 2007-05-11 16:18:39 阅读(4041) 回复(1)

[code]#include ; #include ; #include <pthread.h>; #include ; #include ; #include ; #include ; #include ; #define BUFFER 512 #define MAX_HOST 256 struct rcmd_type{ char *hostname; char *time; }; void *_exec_program(void *arg) { int ret; char *buff; struct rcmd_type *host = (struct rcmd_type *)arg; printf("GET HOSTNA...

by badeager - C/C++ - 2004-09-01 12:21:27 阅读(1708) 回复(5)

同样一份代码,在cygwin和linux下执行成功,HP-UX下执行失败。 int nRet = 0; nRet = pthread_create(&tid, NULL, nThreadFunc, NULL); if( nRet != 0 ) { printf("++++++[%d]++++++\n",nRet ); perror("pthread_create"); } 代码如上,linux下 nRet 的返回值为0,即上段代码执行成功。 hp-ux下执行结果为: ++++++[251]++++++ pthread_create: Error 0 请问高手这个返回值是怎么回事 ?

by qfmeal - C/C++ - 2015-03-02 10:22:14 阅读(8818) 回复(7)