当前位置:  技术问答>linux和unix

真的是不明白,高手帮指点下,程序怎么不按套路来了呢???

    来源: 互联网  发布时间:2016-07-16

    本文导语:  #include  #include  #include  #include  #include  #include  void *thread_function(void *arg); pthread_mutex_t work_mutex; #define WORK_SIZE 1024 char work_area[WORK_SIZE]; int num1=0; int res; int main(){ pthread_t a_thread; void *thread_result; printf("why");  r...

#include 
#include 
#include 
#include 
#include 
#include 

void *thread_function(void *arg);
pthread_mutex_t work_mutex;

#define WORK_SIZE 1024
char work_area[WORK_SIZE];
int num1=0;
int res;

int main(){
pthread_t a_thread;
void *thread_result;
printf("why"); 

res = pthread_mutex_init(&work_mutex,NULL);
if(res != 0){
perror("Mutex initializatio failed");
exit(EXIT_FAILURE);
}

res = pthread_create(&a_thread,NULL,thread_function,NULL);//num1
if(res!=0){
perror("Thread creation failed");
exit(EXIT_FAILURE);
}

pthread_mutex_lock(&work_mutex);//num2

printf("end");
}

void *thread_function(void *arg){
pthread_mutex_lock(&work_mutex);
num1++;
}


这是代码,编译运行结果是不输入任何东西,而是死循环的等待输入

其中的互斥量是在打印后面用的,怎么不打印“why”呢?

|
因为你程序退出前会刷新缓冲区,
改成


#include 

int main(int argc, char *argv[])
{
printf("Hello, world");

while(1)
{
   sleep(1);
}

return 0;
}

就不可以了



    
 
 
 
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • socket编程中一个还没想明白的问题!希望得到高手的帮助!
  • gawk与nawk 以及awk的区别和怎么使用,有点不是很明白请高手赐教!
  • 菜鸟初学java,关于移位操作老看不明白,请高手帮忙解释一下
  • 哪位高手为我详细的讲一下SUPER超类啊。。不是很明白。。。
  • 我们说某某类是unsynchronized,有点不明白。高手讲讲。
  • 父类与子类之间的一些关系不明白,高手请进来!!
  • 有那位朋友看过Java2核心技术中的自定义布局管理器,在其中方法preferredLayoutSize的实现是怎样的?看不明白,高手解释一下
  • 安装linux时遇到了意外错误,不明白,请高手指教!!
  • 内核编程遇到回调函数,实在看不明白,哪位高手帮忙看看解释下,跪谢。
  • 不太明白线程控制中的yield(),请高手给小弟见解一下,最好带例子?
  • Serializable?使用和意思?在thinking in java里面看了半天一天也没有明白什么意思!谢谢高手大虾了
  • APUE 文件复制到分页程序 中不明白的一点求高手解答
  • 刚学linux几天,对其中很多函数不明白,还请高手指教一二
  • 一个密码框的例子,可出现的错误我怎么也想不明白,还忘高手指教。
  • 这几个是什么服务,不明白为什么一直开启?一直都没弄明白过
  • 请教大家!!!java如何实现多重继承?接口该如何使用?份数可以再加,只要我明白了
  • 一个问题,有点不明白!!!
  • linux crontab 设定老是想不明白。。。。
  • 有句话不明白,求解释
  • 关于终端的一些小问题,不明白。。。
  • Makefile中的一句不明白,关于shell中sed函数
  • NOSQL iis7站长之家
  • 不明白seteuid()的作用
  • i=$(($i+1))。为什么i=$($i+1)就不行呢?不明白里面那层括号起什么作用。
  • 在init脚本中屡屡看到类似命令,不明白的说:mount -t sysfs /sys /sys
  • VMWare上装了个Fedora,但装不上VMWareTools,新手,不明白为什么
  • 总算明白gettext函数是怎么用的了!散分
  • 想了解LINUX一定能明白汇编语言吗?
  • 请问:什么是组合?看了THINGKING IN JAVA后,还是不是很明白
  • 我不是很明白,请帮忙!
  • method overriding 的意思我明白,但在中文里应该翻译成什么为好?


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3