Sign in

gwj / po_oopc · Files

GitLab

  • Go to dashboard
  • Project
  • Activity
  • Files
  • Commits
  • Network
  • Graphs
  • po_oopc
  • examples04
  • 06-threads
  • volatile2.cpp
  • Initial version
    455e0054
    Grzegorz Jabłoński authored
    2019-10-31 09:39:53 +0100  
    Browse Code »
volatile2.cpp 310 Bytes
Edit Raw Blame History
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26
#include <stdio.h>
#include <pthread.h>

volatile int val = 0;

void *
fun1 (void *)
{
  val = 0;
  while (1)
    if (val != 0)
      break;
  printf ("out of the loop\n");
  pthread_exit (NULL);
}


int
main ()
{
  pthread_t w;

  pthread_create (&w, NULL, fun1, NULL);
  val = 1;
  pthread_join (w, NULL);
}