在下面的代碼片段中的一員,C++ 11 '函數native_handle' 不是 '的std :: this_thread'
void foo() {
std::this_thread::native_handle().... //error here
}
int main() {
std::thread t1(foo);
t1.join();
return 0;
}
如何從功能foo
內得到std::this_thread
的native_handle
?
您認爲這樣的事情值得作爲C++ 14的提議提交嗎? – pyCthon 2013-04-28 03:49:59
@NicholasPezolano:此時沒有。然而,我可以通過一個激勵用例和一個實現來證明它。即我想我知道成本/風險。但我不認爲我知道這個好處。如果收益爲零,那麼無論成本如何低,收益/成本比率都很差。所以你需要證明一個很大的好處。 – 2013-04-29 02:30:10
我不認爲OP必然需要'std :: thread :: id :: native_handle'。我認爲有趣的一點是:不應該'std :: this_thread'的接口模仿'std :: thread'的接口嗎?當然,對於那些涉及線程生命週期管理的成員來說,正如你正確地指出的那樣,沒有太大意義。這並沒有留下太多的東西,但'native_handle'明顯地缺席了我。 – 2013-04-30 04:13:05