Wie schlafen mit boost :: chrono?

8

Beispiele für boost::this_thread::sleep() scheinen Objekte von boost::posix_time::milliseconds zu verwenden. Ich habe es versucht und es funktioniert, aber ich verwende boost::chrono für die Überprüfung der Systemuhr und so weiter. Es scheint mir, ich könnte sleep() a chrono::duration wie folgt übergeben:

  

boost :: this_thread :: sleep (boost :: chrono :: duration (10));

Aber der Compiler gibt mir den folgenden Fehler:

  

... boost_1_49_0 \ boost / thread / win32 / thread_data.hpp (171): Fehler C2039: 'total_milliseconds': ist kein Mitglied von 'boost :: chrono :: duration'

Was ich verwirrend finde. Habe ich recht damit zu denken, dass ich das könnte? Wird es notwendig sein, in ein posix_time zu konvertieren?

    
2NinerRomeo 03.03.2012, 01:16
quelle

1 Antwort

11

Verwenden Sie so sleep_for und seconds

%Vor%

BEARBEITEN

Nach der Überprüfung ist diese Funktion in Boost 1.49.0 noch nicht verfügbar. Alle meine Entschuldigung. Dies funktioniert nur in der Hauptversion von Boost.

Das bedeutet, dass es nicht möglich ist, eine schlafähnliche Funktion aufzurufen, ohne in ein boost.datetime Format zu konvertieren.

    
J.N. 03.03.2012, 03:11
quelle

Tags und Links