本文实例讲述了基于C++实现的线程休眠代码,。具体方法如下:
linux平台示例如下:
?
- /* File : thread1.c
- Author : Mike E-Mail : Mike_Zhang@live.com
- */ #include <stdio.h>
- #include <pthread.h> #include <time.h>
- void m_threadSleep(int sec,int nsec) {
- struct timespec sleepTime; struct timespec returnTime;
- sleepTime.tv_sec = sec; sleepTime.tv_nsec = nsec;
- nanosleep(&sleepTime, &returnTime); }
- void test1() {
- m_threadSleep(1,0); printf("I'm thread1 ...rn");
- } void test2()
- { m_threadSleep(2,0);
- printf("I'm thread2 ...rn"); }
- int main() {
- pthread_t thread1,thread2; void *result;
- time_t tbegin,tend; tbegin = time(NULL);
- pthread_create(&thread1,NULL,(void*)&test1,NULL); pthread_create(&thread2,NULL,(void*)&test2,NULL);
- pthread_join(thread1,&result); pthread_join(thread2,&result);
- tend = time(NULL); printf("%drn",tend-tbegin);
- return 0; }
编译代码如下:
- gcc thread1.c -o thread1 -lpthread










