线程库
该页由英文版wiki使用Google Translate机器翻译而来。
该翻译可能存在错误或用词不当。鼠标停留在文本上可以看到原版本。你可以帮助我们修正错误或改进翻译。参见说明请点击这里. |
C++ 包含内建线程支持, 互斥, 条件变量, 以及futures.
目录 |
[编辑] 。主题。
Threads enable programs to execute across several processor cores.
在头文件
<thread> 中定义 | |
(C++11) |
管理一个单独的线程 (类) |
Functions managing the current thread | |
定义于
this_thread 名字空间 | |
(C++11) |
建议(根据具体实现)交出当前时间片以执行其他线程 (函数) |
(C++11) |
返回当前线程的线程ID 原文: returns the thread id of the current thread (函数) |
(C++11) |
暂停当前线程执行指定时间 (函数) |
(C++11) |
暂停当前线程的执行直到特定的时间点 (函数) |
[编辑] 。互斥。
Mutual exclusion algorithms prevent multiple threads from simultaneously accessing shared resources. This prevents data races and provides support for synchronization between threads.
在头文件
<mutex> 中定义 | |
(C++11) |
提供了基本的相互排斥的设施 原文: provides basic mutual exclusion facility (类) |
(C++11) |
提供相互排斥设施,实现锁定一个超时 原文: provides mutual exclusion facility which implements locking with a timeout (类) |
(C++11) |
提供了相互排斥的设施,可以由同一个线程递归锁定 原文: provides mutual exclusion facility which can be locked recursively by the same thread (类) |
(C++11) |
提供相互排斥由同一个线程,并实现锁定一个超时可以锁定recursively 的的设施 原文: provides mutual exclusion facility which can be locked recursively by the same thread and implements locking with a timeout (类) |
Generic mutex management | |
(C++11) |
实现了严格的范围为基础的互斥体的所有权包装 原文: implements a strictly scope-based mutex ownership wrapper (类模板) |
(C++11) |
实现可移动的的互斥所有权包装 原文: implements movable mutex ownership wrapper (类模板) |
标签类型用于指定锁定策略 原文: tag type used to specify locking strategy (类) | |
标签使用的常量来指定锁定策略 原文: tag constants used to specify locking strategy (常量) | |
Generic locking algorithms | |
(C++11) |
通过重复调用 try_lock 试图获得互斥体的所有权 原文: attempts to obtain ownership of mutexes via repeated calls to try_lock (函数模板) |
(C++11) |
指定的锁互斥体,块,如果有任何无法使用 原文: locks specified mutexes, blocks if any are unavailable (函数模板) |
| |
(C++11) |
(类) |
(C++11) |
只有一次,即使从多个线程调用调用一个函数 原文: invokes a function only once even if called from multiple threads (函数模板) |
[编辑] 。条件变量。
A condition variable is a synchronization primitive that allows multiple threads to communicate with eachother. It allows some number of threads to wait (possibly with a timeout) for notification from another thread that they may proceed. A condition variable is always associated with a mutex.
在头文件
<condition_variable> 中定义 | |
(C++11) |
provides a condition variable associated with a std::unique_lock (类) |
(C++11) |
provides a condition variable associated with any lock type (类) |
(C++11) |
schedules a call to notify_all to be invoked when this thread is completely finished (函数) |
(C++11) |
lists the possible results of timed waits on condition variables (枚举) |
[编辑] 。期货。
The standard library provides facilities to obtain values that are returned and to catch exceptions that are thrown by asynchronous tasks (i.e. functions launched in separate threads). These values are communicated in a shared state, in which the asynchronous task may write its return value or store an exception, and which may be examined, waited for, and otherwise manipulated by other threads that hold instances of std::future or std::shared_future that reference that shared state.
在头文件
<future> 中定义 | |
(C++11) |
存储一个值,该值用于异步检索 原文: stores a value for asynchronous retrieval (类模板) |
(C++11) |
包功能来存储它的返回值的异步检索 原文: packages a function to store its return value for asynchronous retrieval (类模板) |
(C++11) |
等待一个值,该值被设置异步 原文: waits for a value that is set asynchronously (类模板) |
(C++11) |
等待一个异步设置的值(可能是所引用的其他期货) 原文: waits for a value (possibly referenced by other futures) that is set asynchronously (类模板) |
(C++11) |
异步运行的功能(可能在一个新的线程),并返回一个std::future,将持有的结果 原文: runs a function asynchronously (potentially in a new thread) and returns a std::future that will hold the result (函数模板) |
(C++11) |
指定的政策std::async推出 原文: specifies the launch policy for std::async (枚举) |
(C++11) |
指定std::future和std::shared_future进行定时等待的结果 原文: specifies the results of timed waits performed on std::future and std::shared_future (枚举) |
Future errors | |
(C++11) |
报告一个错误相关的期货或承诺 原文: reports an error related to futures or promises (类) |
(C++11) |
确定了未来的错误类别 原文: identifies the future error category (函数) |
(C++11) |
识别未来的错误代码 (枚举) |