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

小弟编了一个非常简化的多线程模拟电梯程序,编译通过,可是运行啥结果也没有,请高手指点!

    来源: 互联网  发布时间:2015-10-22

    本文导语:  源程序如下: #include  #include  #include  #include  #include    int currDir=0; int currNo=0; pthread_mutex_t mutex=PTHREAD_MUTEX_INITIALIZER; pthread_cond_t v=PTHREAD_COND_INITIALIZER; int i,j,k, jj,ii,kk,x;   pthread_t upthread;   pthread_t downthread;   pthr...

源程序如下:
#include 
#include 
#include 
#include 
#include 
 
int currDir=0;
int currNo=0;
pthread_mutex_t mutex=PTHREAD_MUTEX_INITIALIZER;
pthread_cond_t v=PTHREAD_COND_INITIALIZER;
int i,j,k, jj,ii,kk,x;
  pthread_t upthread;
  pthread_t downthread;
  pthread_t upfirst;
 
  void process()
{
  int y=0;
for(y=0;y0)
        pthread_cond_wait(&v,&mutex);
       
        if(currDir!=0)
        currDir=0;
        
        currNo++;
        pthread_mutex_unlock(&mutex);
        process();
        currNo--;
        pthread_cond_signal(&v);
        pthread_mutex_unlock(&mutex);
if(pthread_kill(pthread_self(),SIGKILL))
fprintf(stderr,"sldkfjsldfk");
 
  }
  
  void* down(void* b){
  j=*((int*)b); printf("a customer arrives floor %d",&j);
        pthread_mutex_lock(&mutex);
        while(currDir!=1&&currNo>0)
        pthread_cond_wait(&v,&mutex);
        if(currDir!=1)
        currDir=1;
        currNo++;
        pthread_mutex_unlock(&mutex);
        process();
  
        pthread_mutex_lock(&mutex);
        currNo--;
        pthread_cond_signal(&v);
        pthread_mutex_unlock(&mutex);
if(pthread_kill(pthread_self(),SIGKILL))
fprintf(stderr,"sldkfjsldfk");
       
  }
  
        void main() {               
int i,j,k,iRandom;
 
int iSeed=time(NULL);
srand(iSeed); 
  i=rand(1,100);
printf("pre i is:%dn",i); 
 i=i%5+1;
 printf("i is: %dn",i); 
 ii=pthread_create(&upfirst,NULL,up,(void*)&i);
 if(ii!=0){
 perror("create thread error");
 exit(1);}
 
 
for(x=0;x

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












  • 相关文章推荐
  • 小弟初步接触jsp 哪位大哥给我介绍一个好的编译器.
  • 小弟刚接触java,不知道大家现在都用什么编译源程序?
  • 小弟遇到个交叉编译的问题,谁能帮忙解决下啊
  • 大哥大姐们小弟刚学JAVA,对它没点头绪啊!能告诉我JAVA在什么环境下编写代码和编译吗??
  • 菜鸟问题,小弟刚刚使用LINUX不久,不知道如何使用编程工具进行编译和运行!
  • 小弟是菜鸟~!用Jbuilder7编译HELLO是出现了如下错误提示 :
  • 我如何在linux下写,编译一程序?小弟新学,谢谢
  • 各位大哥帮帮小弟吧,编译uClinux内核出错了
  • 求助:驱动编译出现的问题!小弟折腾好几天了,始终不得其解,各位大侠指点一下 谢谢
  • 小弟写了一个很简单的动态库实例函数用来学习,但编译通过之后执行可执行文件报错。跪请高手帮忙!!!!
  • 大哥们,小弟我准备学JAVA了给推荐几本好书吧!小弟不胜感激啊!
  • 小弟问个问题,JDK哪有下载啊!小弟不胜感激啊!
  • linux高人!!!帮帮小弟啊,小弟是菜鸟
  • 哥们,谁有Jbuilder 4的注册码,给小弟解围,小弟谢先!!!
  • 小弟考试在即!望大哥们帮忙!!!跪求!!!
  • 哪位大哥给小弟一个squirrelmail的安装教程
  • 各位网络编程的大侠,帮帮小弟
  • OpenSSL安装过程中遇到的问题,希望大哥们帮帮小弟
  • 请各位大虾给小弟推荐几本好书
  • 小弟想在linux下访问windows 和usb的文件系统
  • 请问JBulider 4的序列号谁知到?能否提供给小弟?谢谢
  • 各位兄弟 谁有 powerZip 5.21 的注册码,小弟不胜感激!!
  • 小弟想用java做个sygate
  • 求教:文件打包移植错误发生排序错误,小弟努力送分送分啦!59~~~
  • 小弟急需要知道程序员查分网站。多谢!!!
  • 小弟签约银行,想装个unix先熟悉一下!
  • 小弟高分求“Linux 0.02版”的源代码!
  • 小弟是初学者,请推荐几本不错的unix书籍。
  • 小弟想学linux,推荐几本好书,有电子版下载的最好.
  • ★★★那位仁兄有Apache的源代码?小弟急用!多谢!!


  • 站内导航:


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

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

    浙ICP备11055608号-3