Freigeben über


concurrency-Namespace-Operatoren

operator||-Operator

Erstellt eine Aufgabe, die erfolgreich abgeschlossen wird, wenn eine der als Argumente angegeben Aufgaben erfolgreich abgeschlossen wird.

template<typename ReturnType>
task<ReturnType> operator||(
    const task<ReturnType>& lhs,
    const task<ReturnType>& rhs);

template<typename ReturnType>
task<std::vector<ReturnType>> operator||(
    const task<std::vector<ReturnType>>& lhs,
    const task<ReturnType>& rhs);

template<typename ReturnType>
task<std::vector<ReturnType>> operator||(
    const task<ReturnType>& lhs,
    const task<std::vector<ReturnType>>& rhs);

inline task<void> operator||(
    const task<void>& lhs,
    const task<void>& rhs);

Parameter

ReturnType
Der Typ der zurückgegebenen Aufgabe.

Lhs
Die erste Aufgabe, die mit der resultierenden Aufgabe kombiniert werden soll.

rhs
Die zweite Aufgabe, die mit der resultierenden Aufgabe kombiniert werden soll.

Rückgabewert

Eine Aufgabe, die erfolgreich abgeschlossen wird, wenn eine der Eingabeaufgaben erfolgreich abgeschlossen wurde. Wenn die Eingabeaufgaben vom Typ T sind, wird die Ausgabe dieser Funktion task<std::vector<T> sein. Wenn die Eingabeaufgaben vom Typ void sind, ist die Ausgabeaufgabe auch task<void>.

Hinweise

Wenn beide Vorgänge abgebrochen oder Ausnahmen ausgelöst werden, wird die zurückgegebene Aufgabe im abgebrochenen Zustand abgeschlossen, und eine der Ausnahmen, falls vorhanden, wird ausgelöst, wenn Sie diese Aufgabe aufrufen oder wait() an dieser Aufgabe teilnehmenget().

operator&&-Operator

Erstellt eine Aufgabe, die erfolgreich abgeschlossen wird, wenn beide als Argumente bereitgestellten Vorgänge erfolgreich abgeschlossen werden.

template<typename ReturnType>
task<std::vector<ReturnType>>  operator&&(
    const task<ReturnType>& lhs,
    const task<ReturnType>& rhs);

template<typename ReturnType>
task<std::vector<ReturnType>>  operator&&(
    const task<std::vector<ReturnType>>& lhs,
    const task<ReturnType>& rhs);

template<typename ReturnType>
task<std::vector<ReturnType>>  operator&&(
    const task<ReturnType>& lhs,
    const task<std::vector<ReturnType>>& rhs);

template<typename ReturnType>
task<std::vector<ReturnType>>  operator&&(
    const task<std::vector<ReturnType>>& lhs,
    const task<std::vector<ReturnType>>& rhs);

inline task<void>  operator&&(
    const task<void>& lhs,
    const task<void>& rhs);

Parameter

ReturnType
Der Typ der zurückgegebenen Aufgabe.

Lhs
Die erste Aufgabe, die mit der resultierenden Aufgabe kombiniert werden soll.

rhs
Die zweite Aufgabe, die mit der resultierenden Aufgabe kombiniert werden soll.

Rückgabewert

Eine Aufgabe, die erfolgreich abgeschlossen ist, wenn beide Eingabeaufgaben erfolgreich abgeschlossen wurden. Wenn die Eingabeaufgaben vom Typ T sind, wird die Ausgabe dieser Funktion task<std::vector<T>> sein. Wenn die Eingabeaufgaben vom Typ void sind, ist die Ausgabeaufgabe auch task<void>.

Hinweise

Wenn eine der Vorgänge abgebrochen oder eine Ausnahme ausgelöst wird, wird die zurückgegebene Aufgabe frühzeitig abgeschlossen, im abgebrochenen Zustand und die Ausnahme wird ausgelöst, wenn sie auftritt, wenn Sie diese Aufgabe aufrufen oder wait() an dieser Aufgabe teilnehmenget().

operator== Operator

Testet, ob das concurrent_vector-Objekt links vom Operator gleich dem concurrent_vector-Objekt rechts vom Operator ist.

template<typename T, class A1, class A2>
inline bool operator== (
    const concurrent_vector<T, A1>& _A,
    const concurrent_vector<T, A2>& _B);

Parameter

T
Der Datentyp der elemente, die in den gleichzeitigen Vektoren gespeichert sind.

A1
Der Allocatortyp des ersten concurrent_vector Objekts.

A2
Der Zuweisungstyp des zweiten concurrent_vector Objekts.

_Ein
Ein Objekt des Typs concurrent_vector.

_B
Ein Objekt des Typs concurrent_vector.

Rückgabewert

true wenn der gleichzeitige Vektor auf der linken Seite des Operators gleich dem gleichzeitigen Vektor auf der rechten Seite des Operators ist; andernfalls false.

Hinweise

Zwei gleichzeitige Vektoren sind gleich, wenn sie dieselbe Anzahl von Elementen haben und ihre jeweiligen Elemente dieselben Werte aufweisen. Andernfalls sind sie ungleich.

Diese Methode ist in Bezug auf andere Methoden, die einen der gleichzeitigen Vektoren oder _BVektoren _A ändern können, nicht parallel.

operator!= Operator

Testet, ob das concurrent_vector-Objekt links vom Operator ungleich dem concurrent_vector-Objekt rechts vom Operator ist.

template<typename T, class A1, class A2>
inline bool operator!= (
    const concurrent_vector<T, A1>& _A,
    const concurrent_vector<T, A2>& _B);

Parameter

T
Der Datentyp der elemente, die in den gleichzeitigen Vektoren gespeichert sind.

A1
Der Allocatortyp des ersten concurrent_vector Objekts.

A2
Der Zuweisungstyp des zweiten concurrent_vector Objekts.

_Ein
Ein Objekt des Typs concurrent_vector.

_B
Ein Objekt des Typs concurrent_vector.

Rückgabewert

true wenn die gleichzeitigen Vektoren nicht gleich sind; false wenn die gleichzeitigen Vektoren gleich sind.

Hinweise

Zwei gleichzeitige Vektoren sind gleich, wenn sie dieselbe Anzahl von Elementen haben und ihre jeweiligen Elemente dieselben Werte aufweisen. Andernfalls sind sie ungleich.

Diese Methode ist in Bezug auf andere Methoden, die einen der gleichzeitigen Vektoren oder _BVektoren _A ändern können, nicht parallel.

operator<-Operator

Testet, ob das concurrent_vector-Objekt links vom Operator kleiner als das concurrent_vector-Objekt auf der rechten Seite ist.

template<typename T, class A1, class A2>
inline bool operator<(
    const concurrent_vector<T, A1>& _A,
    const concurrent_vector<T, A2>& _B);

Parameter

T
Der Datentyp der elemente, die in den gleichzeitigen Vektoren gespeichert sind.

A1
Der Allocatortyp des ersten concurrent_vector Objekts.

A2
Der Zuweisungstyp des zweiten concurrent_vector Objekts.

_Ein
Ein Objekt des Typs concurrent_vector.

_B
Ein Objekt des Typs concurrent_vector.

Rückgabewert

true wenn der gleichzeitige Vektor auf der linken Seite des Operators kleiner als der gleichzeitige Vektor auf der rechten Seite des Operators ist; andernfalls false.

Hinweise

Das Verhalten dieses Operators ist identisch mit dem entsprechenden Operator für die vector Klasse im std Namespace.

Diese Methode ist in Bezug auf andere Methoden, die einen der gleichzeitigen Vektoren oder _BVektoren _A ändern können, nicht parallel.

operator<=-Operator

Testet, ob das concurrent_vector-Objekt links vom Operator kleiner oder gleich dem concurrent_vector-Objekt auf der rechten Seite ist.

template<typename T, class A1, class A2>
inline bool operator<= (
    const concurrent_vector<T, A1>& _A,
    const concurrent_vector<T, A2>& _B);

Parameter

T
Der Datentyp der elemente, die in den gleichzeitigen Vektoren gespeichert sind.

A1
Der Allocatortyp des ersten concurrent_vector Objekts.

A2
Der Zuweisungstyp des zweiten concurrent_vector Objekts.

_Ein
Ein Objekt des Typs concurrent_vector.

_B
Ein Objekt des Typs concurrent_vector.

Rückgabewert

true wenn der gleichzeitige Vektor auf der linken Seite des Operators kleiner oder gleich dem gleichzeitigen Vektor auf der rechten Seite des Operators ist; andernfalls false.

Hinweise

Das Verhalten dieses Operators ist identisch mit dem entsprechenden Operator für die vector Klasse im std Namespace.

Diese Methode ist in Bezug auf andere Methoden, die einen der gleichzeitigen Vektoren oder _BVektoren _A ändern können, nicht parallel.

operator>-Operator

Testet, ob das concurrent_vector-Objekt links vom Operator größer als das concurrent_vector-Objekt auf der rechten Seite ist.

template<typename T, class A1, class A2>
inline bool operator>(
    const concurrent_vector<T, A1>& _A,
    const concurrent_vector<T, A2>& _B);

Parameter

T
Der Datentyp der elemente, die in den gleichzeitigen Vektoren gespeichert sind.

A1
Der Allocatortyp des ersten concurrent_vector Objekts.

A2
Der Zuweisungstyp des zweiten concurrent_vector Objekts.

_Ein
Ein Objekt des Typs concurrent_vector.

_B
Ein Objekt des Typs concurrent_vector.

Rückgabewert

true wenn der gleichzeitige Vektor auf der linken Seite des Operators größer als der gleichzeitige Vektor auf der rechten Seite des Operators ist; andernfalls false.

Hinweise

Das Verhalten dieses Operators ist identisch mit dem entsprechenden Operator für die vector Klasse im std Namespace.

Diese Methode ist in Bezug auf andere Methoden, die einen der gleichzeitigen Vektoren oder _BVektoren _A ändern können, nicht parallel.

operator>=-Operator

Testet, ob das concurrent_vector-Objekt links vom Operator größer oder gleich dem concurrent_vector-Objekt auf der rechten Seite ist.

template<typename T, class A1, class A2>
inline bool operator>= (
    const concurrent_vector<T, A1>& _A,
    const concurrent_vector<T, A2>& _B);

Parameter

T
Der Datentyp der elemente, die in den gleichzeitigen Vektoren gespeichert sind.

A1
Der Allocatortyp des ersten concurrent_vector Objekts.

A2
Der Zuweisungstyp des zweiten concurrent_vector Objekts.

_Ein
Ein Objekt des Typs concurrent_vector.

_B
Ein Objekt des Typs concurrent_vector.

Rückgabewert

true wenn der gleichzeitige Vektor auf der linken Seite des Operators größer oder gleich dem gleichzeitigen Vektor auf der rechten Seite des Operators ist; andernfalls false.

Hinweise

Das Verhalten dieses Operators ist identisch mit dem entsprechenden Operator für die vector Klasse im std Namespace.

Diese Methode ist in Bezug auf andere Methoden, die einen der gleichzeitigen Vektoren oder _BVektoren _A ändern können, nicht parallel.

Siehe auch

Concurrency-Namespace