当前位置:  编程技术>c/c++/嵌入式

基于C++实现的线程休眠代码

    来源: 互联网  发布时间:2014-10-29

    本文导语:  本文实例讲述了基于C++实现的线程休眠代码,分享给大家供大家参考。具体方法如下: linux平台示例如下: /* File : thread1.c Author : Mike E-Mail : Mike_Zhang@live.com */ #include #include #include void m_threadSleep(int sec,int nsec) { st...

本文实例讲述了基于C++实现的线程休眠代码,分享给大家供大家参考。具体方法如下:

linux平台示例如下:

/*
File   : thread1.c
Author  : Mike
E-Mail  : Mike_Zhang@live.com
*/
#include 
#include 
#include 
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

boost库实现示例如下:

/*
File   : boost_thread1.cpp
Author  : Mike
E-Mail  : Mike_Zhang@live.com
*/
#include 
#include 
#include 

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 

    
 
 

您可能感兴趣的文章:

  • Base64编码原理详解及c++编码解码实现
  • 我实现了个J2EE技术的服务器,支持TCP、UDP和数据库,由于性能的原因,需要改为C或C++实现,我是C、C++新手,我该如何入手呢?看什么样的
  • c++实现MD5算法代码示例
  • java 与 C++ 实现后绑定的方法
  • c++通用模板类(template class)定义实现详细介绍
  • Qt实现的C++框架 qtioccontainer
  • 用C或C++实现主存的分配与回收
  • 在linux系统上,如何用C++实现获取和设置系统时间?
  • 文本压缩算法C++实现 Golden Huffman
  • C++标准库实现 libc++
  • C++的XMLRPC实现 XMLRPC++
  • Java/JavaScript API 的 C++ 实现 libj
  • c++ 连接两个字符串实现代码 实现类似strcat功能
  • c++在unix中如何实现CString的方法?或者说有没有替换CString的类?
  • 请问:java中如何实现C++中的sizeof()方法?
  • 用C或C++编程,模拟可变分区存储管理且首次适应的算法实现存储器的分配与回收
  • vim中如何实现c++代码编写的自动格式化和语法高亮的功能?
  • C++实现CreatThread函数主线程与工作线程交互的方法
  • 请教为什么在C++编译通过并实现的程序,在linux下就会出错
  • linux下c++怎样实现回调(CALLBACK)函数?
  • 在linux下如何用c++实现建立一个文件夹
  • 不用 signal,如何实现线程的休眠与唤醒
  • 设置Android设备WIFI在休眠时永不断开的代码实现
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • c++ 连接两个字符串实现代码 实现类似strcat功能 iis7站长之家
  • socket实现多文件并发传输,求助多线程实现问题?
  • 如何实现这样的API,可同时被不同的进程/线程使用,但是又不区分进程/线程?
  • **********如何根据线程的handle,来实现挂起指定线程********
  • 如何实现监控线程?
  • 怎样实现:任意一个线程终止,就终止整个进程?
  • 我需要一个模型,在 LINUX C 下。实现线程间的控制,执行,阻塞,再执行。。。。。不知道如何实现。
  • 如何实现多线程下的文件锁?
  • linux下如何实现线程的启动,暂停,和退出!
  • 为什么linux没有在内核实现多线程机制‏
  • JAVA实现线程的三种方法
  • 用户态能否实现信号量机制,来提供线程间互斥和同步的功能?
  • 如何实现线程的“即时创建,即时销毁”?
  • 锁定Vector类型,使其同一时刻只能有一个线程访问,怎么实现??
  • 如何在APACHE环境下实现下载限制为单线程!
  • openmp线程实现原理
  • c# winform 关闭窗体时同时结束线程实现思路
  • 请问Runnable接口为什么能实现多线程?
  • 想写个FTP多线程下载工具但有几个实现细节问题
  • C实现的线程池 threadpool
  • 通过javascript实现DIV居中,兼容各浏览器版本
  • interface 到底有什么用???实现接口,怎么实现??
  • Python GUI编程:tkinter实现一个窗口并居中代码
  • 怎么用Jsp实现在页面实现树型结构?
  • 通过javascript库JQuery实现页面跳转功能代码
  • windows 下的PortTunnel 在linux下怎么实现?或者相应的已经实现的软件?端口映射
  • sharepoint 2010 使用STSNavigate函数实现文件下载举例
  • 网站重定向用C语言实现iptables,ACL实现
  • php实现socket实现客户端和服务端数据通信源代码
  • 在linux下如何编程实现nslookup命令实现的IP地址和域名互相转换的功能?
  • flash AS3反射实现(describeType和getDefinitionByName)




  • 特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3