线程---pthread_creat的问题
#include <stdio.h>
#include <pthread.h>
pthread_t thread_id=NULL;
int gps_proc()
{
int i;
for(i=0;i<10;i++)
{
printf("11111111111111111111111111111111111111111\n");
sleep(1);
}
exit(0);//此处有错,因为exit退出了进程,应该是return 0;8.26 修正
}
int main( void )
{
int ret;
int i;
ret=pthread_create(&thread_id,NULL,(int*)gps_proc(),NULL);
if(ret!=0){printf("Create pthread error!\n");return -1;}
for(i=0;i<10;i++)
{
printf("22222222222222222222222222222222222222222\n");
sleep(1);
}
return 0;
}
编译没有任何错误,执行,
#include <stdio.h>
#include <pthread.h>
pthread_t thread_id=NULL;
int gps_proc()
{
int i;
for(i=0;i<10;i++)
{
printf("11111111111111111111111111111111111111111\n");
sleep(1);
}
exit(0);
}
int main( void )
{
int ret;
int i;
ret=pthread_create(&thread_id,NULL,(int*)gps_proc,NULL);
if(ret!=0){printf("Create pthread error!\n");return -1;}
for(i=0;i<10;i++)
{
printf("22222222222222222222222222222222222222222\n");
sleep(1);
}
return 0;
}
也就是说,在gps_proc后面的()去掉就行了
转载于:https://blog.51cto.com/nnssll/195434
线程---pthread_creat的问题相关推荐
- c语言 ipc 参数 序列化,c语言编译原理及IPC通信经典面试题
1. 1 大致描述一个进程在内存中的分布情况 1)代码区:储存程序代码 2)data段:已初始化的全局变量和static变量以及常量字符串.程序结束后自动释放 3)bss段:未初始化的全局变量和sta ...
- 多线程编程指南 part 2
多线程编程指南 Sun Microsystems, Inc. 4150 Network Circle Santa Clara, CA95054 U.S.A. 文件号码819–7051–10 2006 ...
- Linux 多线程开发-线程创建pthread_creat
1.函数原型 int pthread_creat(pthread_t *pid, const pthread_attr_t *attr,void *(*start_routine)(void *),v ...
- 创建线程:pthread_creat() 函数介绍
创建线程:pthread_creat() 函数介绍 语法 : int pthread_creat(pthread_t *thread,const pthread_attr_t *attr,void * ...
- 应用退出前不让线程切换_用户级线程和内核级线程,你分清楚了吗?
前天晚上有个伙伴私信我说在学进程和线程,问我有没有好的方法和学习教程,刚好我最近也在备相关的课. 班上不少学生学的还是很不错的.拿班上小白和小明的例子吧(艺名哈).小明接受能力很强,小白则稍差些. 关 ...
- Linux下简单线程池的实现
线程池的技术背景 在面向对象编程中,创建和销毁对象是很费时间的,因为创建一个对象要获取内存资源或者其它更多资源.在Java中更是如此,虚拟机将试图跟踪每一个对象,以便能够在对象销毁后进行垃圾回收.所以 ...
- muduo学习笔记 线程类
learn_muduo 线程属性 线程标识 pthreadId_,pid_t 线程函数 func_ 线程名字 name_ 线程序号 numCreated_ bool started_; // 线程状态 ...
- clone的fork与pthread_create创建线程有何不同pthread多线程编程的学习小结(转)
进程是一个指令执行流及其执行环境,其执行环境是一个系统资源的集合,这些资源在Linux中被抽 象成各种数据对象:进程控制块.虚存空间.文件系统,文件I/O.信号处理函数.所以创建一个进程的 过程就是这 ...
- 线程创建-结束-回收 教程
ps aux -L 查看线程信息 且显示进程状态 使用进程的缺点: 进程切换 系统开销较大 开销大的原因 :切换时需要频繁刷新 cache(类似于缓冲区) 和TLB linux不区分线程 进程 线程其 ...
- Linux 多线程开发-线程的结束pthread_kill和pthread_cancel
1.线程结束的方式 (1)线程函数中调用pthread_exit函数,不会导致对象析构,可以使用 (2)线程所属的进程结束,进程调用exit,线程C++对象不会销毁,不安全,属于被动结束 (3)线程函 ...
最新文章
- javascript中 (function(){})();如何理解?
- android 自定义图形,Android自定义View之图形图像(模仿360的刷新球自定
- 删除highcharts.com点数链接
- python dash库_让你事半功倍的小众 Python 库
- 蓝牙BLE ATT剖析(一)
- 新东方财报背后:增收不增利之下,“下沉”“上线”能有坦途?
- jupyter 显示全部数据
- Android常用的一些make命令(转载)--不错
- Spring精华问答 | Spring框架有哪些主要模块?
- SoapUI 5.4.0 中文乱码
- 文件、文件夹操作(I)
- 计算机科学与技术专业热,广东省计算机科学与技术专业最“热”
- Android Studio下载安装及配置图文教程
- Enigma密码机初步解析
- 整人网页html语言网站,html愚人节整人一直弹的网页窗口怎么做?
- 二进制计量单位#K,M,G,T的换算
- java ftp 上传文件 无效_使用java进行ftp文件上传出现425错误
- sofa与springboot的入门案例
- JS下载喜马拉雅非付费音频
- 【电子存证】互联网企业存证需求与痛点