Reputation: 8505
On gcc 4.4.6, RHEL 6.3 linux, i see the template in thread header
template<typename _Rep, typename _Period>
inline void
sleep_for(const chrono::duration<_Rep, _Period>& __rtime)
But if i try to use it in my application, i get error that sleep_for is not a member of std::this_thread
My application is simple as
#include <thread>
#include <chrono>
using namespace std;
int main()
{
this_thread::sleep_for(chrono::seconds(1));
return 0;
}
Upvotes: 5
Views: 295
Reputation: 2558
When compiling add this parameter to your command line:
-D_GLIBCXX_USE_NANOSLEEP
So compile like this:
gcc -D_GLIBCXX_USE_NANOSLEEP test.cpp -o test
if using g++ you can use
g++ -std=gnu++0x -pthread test.cpp -o test
Upvotes: 7