c++11线程sleep

std::this_thread名字空间

在前面的例子中,还用到了一个this_thread::get_id()函数用以获取当前线程的tid,std::this_thread名字空间提供了如下函数以管理当前线程:

  • yield
  • get_id
  • sleep_for
  • sleep_until

基本上从名字里就可以猜出它们的功能了。以其中的sleep_for函数为例,它提供了一个跨平台的sleep功能,再也不用自己封装了:

    std::chrono::milliseconds dura(2000);
    std::this_thread::sleep_for(dura);

PS:在gcc中使用这个函数时,需要再编译的时候加-D_GLIBCXX_USE_NANOSLEEP选项,否则报语法错误,具体原因可以参看这篇文章。


来自:http://www.cnblogs.com/TianFang/archive/2013/01/27/2878519.html

你可能感兴趣的:(c++11)