|
|
发表于 2006-3-5 20:44:27
|
显示全部楼层
1.process 一般指进程,线程用thread 表示.
2. sleep 只阻塞调用线程
- #include <stdio.h>
- #include <stdlib.h>
- #include <pthread.h>
- #include <time.h>
- int sleep_flag = 0;
- void * foo(void * arg)
- {
- time_t t;
- time(&t);
- printf("%s: begin sleep\n", ctime(&t));
- sleep_flag = 1;
- sleep(10);
- sleep_flag = 0;
- time(&t);
- printf("%s: end sleep.\n", ctime(&t));
- }
- int
- main()
- {
- pthread_t thread;
- time_t t;
- if (pthread_create(&thread, NULL, foo, NULL) != 0)
- {
- perror("pthread create:");
- exit(EXIT_FAILURE);
- }
- while(!sleep_flag);
- while(sleep_flag)
- {
- time(&t);
- printf("%s: sleep ...\n", ctime(&t));
- sleep(1);
- }
- exit(EXIT_SUCCESS);
- }
复制代码 |
|