Skip to content
Snippets Groups Projects
Commit eb6eedc0 authored by 이소현's avatar 이소현
Browse files

lec14

parent 08dd7aee
Branches
No related tags found
No related merge requests found
......@@ -7,14 +7,14 @@ int bbb = 0;
void fn_s()
{
static int a = 0;
printf("== %d %d ==\n",a++, bbb++);
printf("== %d %d ==",a++, bbb++);
}
void *run (void *arg)
{
printf("Hello world of POSXI threads.%d\n", (int) (0) );
for (int i = 0; i < 100; i++)
for (int i = 0; i < 10; i++)
{
sleep(1);
fn_s();
......@@ -26,6 +26,8 @@ void *run (void *arg)
int main()
{
int result1;
char bufff[10];
setvbuf(stdout,bufff, _IOFBF, 10);
run((void *) 0);
sleep(10);
......
#include <stdio.h>
int main()
{
char a;
short b;
int c;
long long d;
scanf("%hhd %hd %d %lld", &a, &b, &c, &d);
printf("%hhd %hd %d %lld\n", a,b,c,d);
}
#include <stdio.h>
#include <sys/types.h>
#include <unistd.h>
int bbb = 0;
void fn_s()
{
static int a = 0;
printf("== %d %d ==",a++, bbb++);
fflush(stdout);
}
void *run (void *arg)
{
printf("Hello world of POSIX threads.%d\n", (int) (0) );
for (int i = 0; i < 10; i++)
{
sleep(1);
fn_s();
}
return 0;
}
int main()
{
int result1;
// char bufff[10];
// setvbuf(stdout,bufff, _IONBF, 10);
run((void *) 0);
printf("Thread return %d at the end\n", result1);
}
#include <stdio.h>
#include <sys/types.h>
#include <unistd.h>
#include <stdlib.h>
#include <pthread.h>
int bbb = 0;
void fn_s()
{
static pthread_mutex_t mutex = PTHREAD_MUTEX_INITIALIZER;
static int a = 0;
printf("<= %d %d =>",a, bbb);
pthread_mutex_lock(&mutex);
a++; bbb++;
pthread_mutex_unlock(&mutex);
}
void *run (void *arg)
{
printf("Hello world of POSXI threads.%d\n", (int) pthread_self() );
for (int i = 0; i < 1000; i++)
{
//usleep(10000);
fn_s();
}
return 0;
}
int main()
{
pthread_t thread1;
pthread_t thread2;
pthread_t thread3;
int result1, result2, result3;
pthread_create(&thread1, NULL, run, NULL );
pthread_create(&thread2, NULL, run, NULL );
pthread_create(&thread3, NULL, run, NULL );
run((void *) 0);
pthread_join(thread1, (void **) &result1);
pthread_join(thread2, (void **) &result2);
pthread_join(thread3, (void **) &result3);
printf("\nThread return %d at the end\n", result1);
}
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment