2012-12-06 6 views
6

Ich versuche, std :: this_thread :: sleep_for() -Funktion zu verwenden, aber habe den Fehler
error: 'std::this_thread' has not been declared.
Das Flag _GLIBCXX_USE_NANOSLEEP enthalten.
Was ist noch nötig, damit es funktioniert?
MinGW ==> gcc Version 4.7.2 (GCC)Fehler: 'std :: this_thread' wurde nicht

SSCCE:

#include<thread> 

int main() { 
    std::this_thread::sleep_for(std::chrono::seconds(3)); 
} 

Befehlszeile:

g++ -D_GLIBCXX_USE_NANOSLEEP -std=gnu++0x ssce.cpp -o ssce.exe 

Ergebnis der Zusammenstellung:

ssce.cpp: In function 'int main()': 
ssce.cpp:4:8: error: 'std::this_thread' has not been declared 
+2

Haben Sie '' # include? – kennytm

+0

Duplizieren von http://stackoverflow.com/questions/4438084/stdthis-threadsleep-for-and-gcc? –

+0

Entschuldigung, ja, ich verwende das – OlegG

Antwort

7

Verwenden MinGW mit POSIX-Threads, Luke.

http://sourceforge.net/projects/mingwbuilds/

+0

danke! Der Compiler, der MinGW ist, machte den Unterschied. – asgs

+0

Ich verstehe diese Antwort überhaupt nicht. Der Fragesteller benutzt * bereits * MinGW. Es ist MinGW, das dieses Problem an erster Stelle verursacht. Auch das ist nicht die Verbindung zu MinGW. Es sollte sein: https://sourceforge.net/projects/mingw/. – Boann

Verwandte Themen