std:: launch
|
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
Definiert im Header
<future>
|
||
|
enum
class
launch
:
/* unspecified */
{
async
=
/* unspecified */
,
|
(seit C++11) | |
std::launch
ist ein
BitmaskType
. Es spezifiziert die Startrichtlinie für eine Aufgabe, die durch die
std::async
-Funktion ausgeführt wird.
Konstanten
Die folgenden Konstanten, die einzelne Bits bezeichnen, sind von der Standardbibliothek definiert:
| Enumerator | Bedeutung |
async
|
die Aufgabe wird in einem anderen Thread ausgeführt, möglicherweise durch dessen Erstellung und Start |
deferred
|
die Aufgabe wird im aufrufenden Thread beim ersten Anfordern ihres Ergebnisses ausgeführt (verzögerte Auswertung) |
Zusätzlich dürfen Implementierungen:
- definiere zusätzliche Bits und Bitmasken, um Einschränkungen für Task-Interaktionen festzulegen, die für eine Teilmenge von Launch-Policies gelten, und
- aktiviere diese zusätzlichen Bitmasken für die erste (Standard-) Überladung von std::async .
Fehlerberichte
Die folgenden verhaltensändernden Fehlerberichte wurden rückwirkend auf zuvor veröffentlichte C++-Standards angewendet.
| DR | Angewendet auf | Verhalten wie veröffentlicht | Korrektes Verhalten |
|---|---|---|---|
| LWG 2102 | C++11 |
std::launch
war ein implementierungsdefinierter Typ
|
es ist nicht implementierungsdefiniert |
Siehe auch
|
(C++11)
|
führt eine Funktion asynchron aus (möglicherweise in einem neuen Thread) und gibt eine
std::future
zurück, die das Ergebnis halten wird
(Funktions-Template) |