Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
В пространстве имен доступны следующие операторы:
Оператор
Создает задачу, которая завершается успешно, если любая из задач, предоставленных в качестве аргументов, завершается успешно.
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);
Параметры
ReturnType
Тип возвращаемой задачи.
lhs
Первая задача, которую нужно объединить с итоговой задачей.
rhs
Вторая задача, которую необходимо объединить с результирующей задачей.
Возвращаемое значение
Задача, которая успешно завершается при успешном выполнении любой из входных задач. Если входные задачи относятся к типу , выводом этой функции будет . Если входные задачи относятся к типу , выходная задача также будет .
Замечания
Если обе задачи отменяются или выбрасывают исключения, возвращенная задача завершится в отмененном состоянии, и одно из исключений, если оно было встречено, будет выброшено при вызове или для этой задачи.
Оператор
Создает задачу, которая успешно завершится, когда обе задачи, предоставленные в качестве аргументов, успешно завершены.
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);
Параметры
ReturnType
Тип возвращаемой задачи.
lhs
Первая задача, которую нужно объединить с итоговой задачей.
rhs
Вторая задача, которую необходимо объединить с результирующей задачей.
Возвращаемое значение
Задача, которая завершается успешно, если обе входные задачи завершены успешно. Если входные задачи относятся к типу , выводом этой функции будет . Если входные задачи относятся к типу , выходная задача также будет .
Замечания
Если одна из задач отменена или вызывает исключение, возвращаемая задача завершится досрочно в состоянии отмены. Исключение, если таковое возникнет, будет выброшено при вызове или на этой задаче.
оператор== оператор==
Проверяет равенство объекта слева от оператора объекту справа от оператора.
template<typename T, class A1, class A2>
inline bool operator== (
const concurrent_vector<T, A1>& _A,
const concurrent_vector<T, A2>& _B);
Параметры
T
Тип данных элементов, хранящихся в параллельных векторах.
A1
Тип распределителя первого объекта.
A2
Тип распределителя второго объекта.
_A
Объект типа .
_B
Объект типа .
Возвращаемое значение
Значение, если конкурентный вектор слева от оператора равен конкурентному вектору справа от оператора; в противном случае .
Замечания
Два параллельных вектора равны, если они имеют одинаковое количество элементов, а соответствующие элементы имеют одинаковые значения. В противном случае они не равны.
Этот метод не является безопасным для параллелизма в отношении других методов, которые могут изменять один из параллельных векторов или .
оператор!= Оператор
Проверяет, не равен ли объект слева от оператора объекту справа от оператора.
template<typename T, class A1, class A2>
inline bool operator!= (
const concurrent_vector<T, A1>& _A,
const concurrent_vector<T, A2>& _B);
Параметры
T
Тип данных элементов, хранящихся в параллельных векторах.
A1
Тип распределителя первого объекта.
A2
Тип распределителя второго объекта.
_A
Объект типа .
_B
Объект типа .
Возвращаемое значение
если одновременные векторы не равны; если одновременные векторы равны.
Замечания
Два параллельных вектора равны, если они имеют одинаковое количество элементов, а соответствующие элементы имеют одинаковые значения. В противном случае они не равны.
Этот метод не является безопасным для параллелизма в отношении других методов, которые могут изменять один из параллельных векторов или .
Оператор
Проверяет, меньше ли объект слева от оператора, чем объект справа от оператора.
template<typename T, class A1, class A2>
inline bool operator<(
const concurrent_vector<T, A1>& _A,
const concurrent_vector<T, A2>& _B);
Параметры
T
Тип данных элементов, хранящихся в параллельных векторах.
A1
Тип распределителя первого объекта.
A2
Тип распределителя второго объекта.
_A
Объект типа .
_B
Объект типа .
Возвращаемое значение
если конкурентный вектор с левой стороны оператора меньше, чем конкурентный вектор с правой стороны оператора; в противном случае .
Замечания
Поведение этого оператора идентично эквиваленту для класса в пространстве имен.
Этот метод не является безопасным для параллелизма в отношении других методов, которые могут изменять один из параллельных векторов или .
Оператор
Проверяет, меньше ли объект слева от оператора, чем объект справа от оператора, или равен ему.
template<typename T, class A1, class A2>
inline bool operator<= (
const concurrent_vector<T, A1>& _A,
const concurrent_vector<T, A2>& _B);
Параметры
T
Тип данных элементов, хранящихся в параллельных векторах.
A1
Тип распределителя первого объекта.
A2
Тип распределителя второго объекта.
_A
Объект типа .
_B
Объект типа .
Возвращаемое значение
Значение, если одновременный вектор слева от оператора меньше или равен одновременному вектору справа от оператора; в противном случае .
Замечания
Поведение этого оператора идентично эквиваленту для класса в пространстве имен.
Этот метод не является безопасным для параллелизма в отношении других методов, которые могут изменять один из параллельных векторов или .
Оператор
Проверяет больше ли объект слева от оператора, чем объект справа от оператора.
template<typename T, class A1, class A2>
inline bool operator>(
const concurrent_vector<T, A1>& _A,
const concurrent_vector<T, A2>& _B);
Параметры
T
Тип данных элементов, хранящихся в параллельных векторах.
A1
Тип распределителя первого объекта.
A2
Тип распределителя второго объекта.
_A
Объект типа .
_B
Объект типа .
Возвращаемое значение
Значение, если совпадающий вектор слева от оператора больше, чем совпадающий вектор справа от оператора; в противном случае .
Замечания
Поведение этого оператора идентично эквиваленту для класса в пространстве имен.
Этот метод не является безопасным для параллелизма в отношении других методов, которые могут изменять один из параллельных векторов или .
Оператор
Проверяет, является ли объект , расположенный слева от оператора, больше или равен объекту , находящемуся справа.
template<typename T, class A1, class A2>
inline bool operator>= (
const concurrent_vector<T, A1>& _A,
const concurrent_vector<T, A2>& _B);
Параметры
T
Тип данных элементов, хранящихся в параллельных векторах.
A1
Тип распределителя первого объекта.
A2
Тип распределителя второго объекта.
_A
Объект типа .
_B
Объект типа .
Возвращаемое значение
Значение, если одновременный вектор на левой стороне оператора больше или равен одновременному вектору на правой стороне оператора; в противном случае .
Замечания
Поведение этого оператора идентично эквиваленту для класса в пространстве имен.
Этот метод не является безопасным для параллелизма в отношении других методов, которые могут изменять один из параллельных векторов или .
См. также
Пространство имен параллелизм