国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > C++ > 正文

基于C++實現的線程休眠代碼

2020-01-26 15:16:43
字體:
來源:轉載
供稿:網友

本文實例講述了基于C++實現的線程休眠代碼,分享給大家供大家參考。具體方法如下:

linux平臺示例如下:

/*File   : thread1.cAuthor  : MikeE-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 .../r/n");}void test2(){  m_threadSleep(2,0);  printf("I'm thread2 .../r/n");}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("%d/r/n",tend-tbegin);  return 0;}

編譯代碼如下:

gcc thread1.c -o thread1 -lpthread

boost庫實現示例如下:

/*File   : boost_thread1.cppAuthor  : MikeE-Mail  : Mike_Zhang@live.com*/#include <boost/date_time/posix_time/posix_time.hpp>#include <boost/thread/thread.hpp>#include <iostream>boost::xtime getSleepTime(int sec,int nsec){  boost::xtime t;  boost::xtime_get(&t, boost::TIME_UTC);  t.sec += sec;  t.nsec += nsec;  return t;}void test1(){  boost::this_thread::sleep(getSleepTime(1,500));  std::cout <<"I'm thread1 !"<< std::endl;}void test2(){  boost::this_thread::sleep(getSleepTime(3,500));  std::cout <<"I'm thread2 !"<< std::endl;}int main(int argc, char* argv[]){  boost::thread thrd1(&test1);  boost::thread thrd2(&test2);  std::time_t t_begin,t_end;  t_begin = time(NULL);  thrd1.join();  thrd2.join();  t_end = time(NULL);  std::cout<<t_end-t_begin<<std::endl;  return 0;}

編譯命令如下:

g++ boost_thread1.cpp -o boost_thread1 -lboost_thread-mt

希望本文所述對大家的C++程序設計有所幫助。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 尼玛县| 胶州市| 平遥县| 常德市| 阿巴嘎旗| 华容县| 讷河市| 普格县| 门头沟区| 罗山县| 视频| 会泽县| 丰镇市| 临夏县| 常德市| 通山县| 盐山县| 长沙市| 驻马店市| 曲周县| 故城县| 正蓝旗| 石柱| 西宁市| 甘孜| 资兴市| 梁河县| 沛县| 运城市| 曲靖市| 利辛县| 高尔夫| 通渭县| 正镶白旗| 泽普县| 宿迁市| 改则县| 吴桥县| 临湘市| 吉木萨尔县| 贞丰县|