#include <iostream>
using namespace std;
int cont=0;
void *funzione2(void *ptr)
{
for(;;)
{
pthread_mute_lock(&mutex1);
if((cont<3)||(cont>6))
{
pthread_cond_signal(&condition)
}
else
{
cont++;
printf("funzione2 %d", cont);
}
pthread_mutex_unlock(&mutex1);
if(cont>=10)
return NULL;
}
}
void *funzione1(void *ptr)
{
for(;;)
{
pthread_mutex_lock(&mutex1);
pthread_cond_wait(&condition, &mutex);
cont++;
printf("funzione1 %d", cont);
pthread_mutex_unlock(&mutex1);
if(cont>=10)
return NULL;
}
}
int main() {
// your code goes here
return 0;
pthread_t thread1;
pthread_t thread2;
pthread_create(&thread1, NULL, funzione1, NULL);
pthread_create(&thread2, NULL, funzione2, NULL);
}
I2luY2x1ZGUgPGlvc3RyZWFtPgp1c2luZyBuYW1lc3BhY2Ugc3RkOwoKaW50IGNvbnQ9MDsKdm9pZCAqZnVuemlvbmUyKHZvaWQgKnB0cikKewoJZm9yKDs7KQoJewoJCXB0aHJlYWRfbXV0ZV9sb2NrKCZtdXRleDEpOwoJCWlmKChjb250PDMpfHwoY29udD42KSkKCQl7CgkJCXB0aHJlYWRfY29uZF9zaWduYWwoJmNvbmRpdGlvbikKCQl9CgkJZWxzZQoJCXsKCQkJY29udCsrOwoJCQlwcmludGYoImZ1bnppb25lMiAlZCIsIGNvbnQpOwoJCX0KCQkKCQlwdGhyZWFkX211dGV4X3VubG9jaygmbXV0ZXgxKTsKCQlpZihjb250Pj0xMCkKCQkJcmV0dXJuIE5VTEw7Cgl9Cn0Kdm9pZCAqZnVuemlvbmUxKHZvaWQgKnB0cikKewoJZm9yKDs7KQoJewoJCXB0aHJlYWRfbXV0ZXhfbG9jaygmbXV0ZXgxKTsKCQlwdGhyZWFkX2NvbmRfd2FpdCgmY29uZGl0aW9uLCAmbXV0ZXgpOwoJCWNvbnQrKzsKCQkKCQlwcmludGYoImZ1bnppb25lMSAlZCIsIGNvbnQpOwoJCXB0aHJlYWRfbXV0ZXhfdW5sb2NrKCZtdXRleDEpOwoJCWlmKGNvbnQ+PTEwKQoJCQlyZXR1cm4gTlVMTDsKCX0KfQoKaW50IG1haW4oKSB7CgkvLyB5b3VyIGNvZGUgZ29lcyBoZXJlCglyZXR1cm4gMDsKCXB0aHJlYWRfdCB0aHJlYWQxOwoJcHRocmVhZF90IHRocmVhZDI7CgkKCXB0aHJlYWRfY3JlYXRlKCZ0aHJlYWQxLCBOVUxMLCBmdW56aW9uZTEsIE5VTEwpOwoJcHRocmVhZF9jcmVhdGUoJnRocmVhZDIsIE5VTEwsIGZ1bnppb25lMiwgTlVMTCk7CgkKfQ==
prog.cpp:9:22: error: use of undeclared identifier 'mutex1'
pthread_mute_lock(&mutex1);
^
prog.cpp:12:35: error: expected ';' after expression
pthread_cond_signal(&condition)
^
;
prog.cpp:12:25: error: use of undeclared identifier 'condition'
pthread_cond_signal(&condition)
^
prog.cpp:20:25: error: use of undeclared identifier 'mutex1'
pthread_mutex_unlock(&mutex1);
^
prog.cpp:29:23: error: use of undeclared identifier 'mutex1'
pthread_mutex_lock(&mutex1);
^
prog.cpp:30:22: error: use of undeclared identifier 'condition'
pthread_cond_wait(&condition, &mutex);
^
prog.cpp:30:34: error: use of undeclared identifier 'mutex'
pthread_cond_wait(&condition, &mutex);
^
prog.cpp:34:25: error: use of undeclared identifier 'mutex1'
pthread_mutex_unlock(&mutex1);
^
8 errors generated.