에 존재하지 않는 이 특정 메소드는 Cygwin으로 이식되지 않았다. 아무도 내가 뭔가 잘못하고 있는지 또는 내가 Cygwin에서 이것이 실제로 없다고 판단 할 수 있는지 알 수 있습니까?notify_all_at_thread_exit Cygwin에서 GCC
빌드 라인 :
/usr/bin/c++.exe -std=gnu++11 -o NotifyAllAtThreadExitTest.cc.o -c NotifyAllAtThreadExitTest.cc
코드 : 4.9 릴리스 시리즈
#include <mutex>
#include <thread>
#include <condition_variable>
std::mutex m;
std::condition_variable cv;
bool ready = false;
void thread_func()
{
std::unique_lock<std::mutex> lk(m);
ready = true;
std::notify_all_at_thread_exit(cv, std::move(lk));
}
int test()
{
std::thread t(thread_func);
t.detach();
std::unique_lock<std::mutex> lk(m);
while(!ready) {
cv.wait(lk);
}
}
[Coliru에서 같은 오류가 발생했습니다] (http://coliru.stacked-crooked.com/a/69bf33d2e62e15d3), 저는 리눅스 환경이라고 생각합니다. 문제는 Cygwin과 관련이 없지만 libstdC++ 자체에서는 4.9.2에서'notify_all_at_thread_exit'가 누락되었습니다. – Casey