⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 mainprocess.c

📁 rgm视频服务器的协议源码
💻 C
字号:
/************************************************************************************************************************/
/*         Author: Yves																						*/
/*         TIME: 2007/11																								*/
/************************************************************************************************************************/
#include <stdio.h>
#include <pthread.h>
#include <unistd.h>

pthread_mutex_t mutex;
pthread_cond_t  cond; 
int state;
int count;
void * child1(void *arg)
{
        
        while(1){
                printf("thread 1 get running \n");
                pthread_mutex_lock(&mutex));
                pthread_cond_signal(&cond);
                printf("thread 1 signal\n");
				count=count+1;
                printf("count is %d \n",count);
				pthread_mutex_unlock(&mutex);
                sleep(5);
                }
        
}

void *child2(void *arg)
{
        while(1){
                printf("thread 2 get running \n");
                pthread_mutex_lock(&mutex));
                pthread_cond_signal(&cond);
                printf("thread 2 signal\n");
				count=count+2; 
				printf("count is %d \n",count);
                pthread_mutex_unlock(&mutex);
                sleep(5);
                }  
}

int main(void)
{
        int tid1,tid2;
		count=0;
        printf("hello, condition variable test\n");
        pthread_mutex_init(&mutex,NULL);
        pthread_cond_init(&cond,NULL);
        pthread_create(&tid1,NULL,child1,NULL);
        pthread_create(&tid2,NULL,child2,NULL);
        do{
            sleep(2); 
            pthread_mutex_lock(&mutex));
            pthread_cond_wait(&cond,&mutex);
            pthread_mutex_unlock(&mutex);
          }while(1);  
        sleep(100);
        pthread_exit(0);
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -