运行截图:
?
这是我电脑上运行一次的结果,结果不一定一样。
?
thread objects that are
joinable shall either be
joined or
detached before they are
destroyed.
可连接线程对象在销毁之前应该被joined或者detached.
?
Parameters
fn
A pointer to function, pointer to member, or any kind of
move-constructible function object (i.e., an object whose class defines
operator(), including
closures and
function objects).
The return value (if any) is ignored.
fn为一个指向函数的指针,或者一个指向成员的的指针,甚至是任一的可以被移动构造的函数对象。
fn的返回值会被忽略。
args...
Arguments passed to the call to
fn (if any). Their types shall be
move-constructible.
If fn is a member pointer, the first argument shall be an object for which that member is defined (or a reference, or a pointer to it).
fn函数的参数。
thread object whose state is moved to the constructed object.
x是一个线程对象。
Fn,Args是模版参数,如果是隐式推导,那么这会绑定相应的左值或者右值,fn将会在新线程中被调用。
?
Example
Data races
Exception safety
| exception type |
error condition |
description |
| system_error |
errc::resource_unavailable_try_again |
The system is unable to start a new thread |
如果复制过程出错,会抛出system_error错误。
?
Note that if an exception is thrown from the function invocation (i.e., from fn itself), it is handled by the new thread. If this invocation terminates with an uncaught exception, terminate() is called.
如果fn抛出异常,线程将会将控制权移交给新的线程,如果不捕获异常,将调用terminate.
?
?
——————————————————————————————————————————————————————————————————
?
//写的错误或者不好的地方请多多指导,可以在下面留言或者点击左上方邮件地址给我发邮件,指出我的错误以及不足,以便我修改,更好的分享给大家,谢谢。
转载请注明出处:http://blog.csdn.net/qq844352155
author:天下无双
Email:coderguang@gmail.com
?
2014-9-3
于GDUT
——————————————————————————————————————————————————————————————————
?
?
x
Fn and
Args... are template parameters: if implicitly deduced, these are the proper
lvalue or
rvalue reference type to bind the arguments to. Note though, that on the call to
fn in the new thread,
decay copies of
fn and
args... are always used (see
std::ref for a wrapper class that makes references copyable). Output: The
move constructor (4) modifies
x. The initialization constructor
(2) throws an exception on the foll