::: °­ÁÂ/¼Ò½º/¹®¼­ :::

°­ÁÂ/¼Ò½º/¹®¼­ ¼º°Ý¿¡ ¸ÂÁö ¾Ê´Â ±¤°í,ºñ¹æ,Áú¹®ÀÇ ±ÛÀº Áï½Ã »èÁ¦Çϸç
³»¿ëÀ» º¹»çÇÏ¿© »ç¿ëÇÒ °æ¿ì ¹Ýµå½Ã À̰÷(http://www.howto.pe.kr)À» Ãâó·Î ¸í½ÃÇÏ¿© ÁÖ¼¼¿ä


Category

  ±è¿µ´ë(2003-03-17 02:11:11, Hit : 6183, Vote : 1635
 [Thread] pthread_cond() function

/***************************************************
*--------------------------------------------------
*   Creat  : 2001. 04. 10  (programed by Cori-Young )
*   Site: http://www.byoneself.co.kr
*   Update :
*--------------------------------------------------
*   Compile : cc -o xxx xxx.c -lpthread -lrt
*--------------------------------------------------
* Machine hardware:   sun4u
* OS version:         5.7
* Processor type:     sparc
* Hardware:           SUNW,Ultra-60
***************************************************/


#include <pthread.h>
#include <stdio.h>

void* compute_thread(void*);

pthread_mutex_t my_sync;
pthread_cond_t rx;

int thread_done = FALSE;

main()
{
         pthread_t tid;
         pthread_attr_t attr;
        
         char hello[] {"Hello, "};
         char thread[] {"thread"};

         pthread_attr_init(&attr);
        pthread_mutex_init(&my_sync,NULL);
        pthread_cond_init(&rx,NULL);
        pthread_create(&tid, &attr, compute_thread, hello);
        
         /* wait until the thread does its work */
        pthread_mutex_lock(&my_sync);
        
        while (!thread_done)
                pthread_cond_wait(&rx,&my_sync);
        
         /* When we get here, the thread has been executed */
        printf(thread);
        printf("n");
        pthread_mutex_unlock(&my_sync);
        exit(0);
}

void* compute_thread(void* dummy)
{
   pthread_mutex_lock(&my_sync);
   printf(dummy);
   thread_done = TRUE;
          pthread_cond_signal(&rx);
          pthread_mutex_unlock(&my_sync);
          return;

}





43   [Unix/Linux] [Thread] pthread_equal() function  ±è¿µ´ë 2003/03/17 4857 1372
42   [Unix/Linux] [Thread] pthread_detach() function  ±è¿µ´ë 2003/03/17 5281 1426
41   [Unix/Linux] [Thread] pthread_create() function  ±è¿µ´ë 2003/03/17 5147 1354
40   [Unix/Linux] [Thread] pthread_cond_wait() function  ±è¿µ´ë 2003/03/17 4861 1323
39   [Unix/Linux] [Thread] pthread_cond_timedwait() function  ±è¿µ´ë 2003/03/17 6064 1784
38   [Unix/Linux] [Thread] pthread_cond_signal() function  ±è¿µ´ë 2003/03/17 4356 1196
37   [Unix/Linux] [Thread] pthread_cond_init() function  ±è¿µ´ë 2003/03/17 5571 1515
36   [Unix/Linux] [Thread] pthread_cond_destroy() function  ±è¿µ´ë 2003/03/17 4708 1243
35   [Unix/Linux] [Thread] pthread_cond_broadcast() function  ±è¿µ´ë 2003/03/17 4823 1395
34   [Unix/Linux] [Thread] pthread_condattr_destroy() function  ±è¿µ´ë 2003/03/17 4692 1348
  [Unix/Linux] [Thread] pthread_cond() function  ±è¿µ´ë 2003/03/17 6183 1635
32   [Unix/Linux] [Thread] pthread_cleanup_push() function  ±è¿µ´ë 2003/03/17 5047 1452
31   [Unix/Linux] [Thread] pthread_cleanup_pop() function  ±è¿µ´ë 2003/03/17 5033 1482
30   [Unix/Linux] [Thread] pthread_cancel() function  ±è¿µ´ë 2003/03/17 5985 1701
29   [Unix/Linux] [Thread] pthread_attr_setinheritsched() function  ±è¿µ´ë 2003/03/17 5221 1456
28   [Unix/Linux] [Thread] pthread_attr_setdetachstate() function  ±è¿µ´ë 2003/03/17 5433 1540
27   [Unix/Linux] [Thread] pthread_attr_init() function  ±è¿µ´ë 2003/03/17 4882 1382
26   [Unix/Linux] [Thread] pthread_attr_getschedparam() function  ±è¿µ´ë 2003/03/17 5031 1416
25   [Unix/Linux] [Thread] pthread_attr_getinheritsched() function  ±è¿µ´ë 2003/03/17 5082 1559
24   [Unix/Linux] [Thread] pthread_attr_getdetachstate() function  ±è¿µ´ë 2003/03/17 5139 1490

[1][2][3][4][5][6][7] 8 [9][10]
 

Copyright 1999-2021 Zeroboard / skin by zero