1
考慮這段代碼:sleep_until不MSVC與steady_clock工作
#include <chrono>
#include <thread>
using namespace std::chrono_literals;
int main()
{
auto sx = std::chrono::steady_clock::now();
std::this_thread::sleep_until(sx + 10s);
}
我希望這個代碼睡10秒;如果我使用GCC進行編譯,這正是它所做的。但是如果我使用微軟VS2015,它根本不會睡覺。
如果我改變steady_clock
到system_clock
,微軟編譯器生成如預期那樣運行的代碼(但可能是system_clock
調整敏感。)
這是一個錯誤,或者有我誤解的東西嗎?
你的代碼在我的系統中完美工作。我正在使用MSVC2015更新2與Windows 10 x64 –
好吧;我的編譯器不是更新2.我將下載該版本並查看它是否修復了此問題。 – oz1cz
確定@ elvis.dukaj,將MSVC2015升級到_Update 2_解決了問題!謝謝!如果您想將您的評論更改爲答案,我會承認它是對這個問題的回答。 (或者我可以刪除問題,如果你喜歡的話。) – oz1cz