Класс scala.collection.parallel.mutable.ParArray
Компонент объект ParArray
класс ParArray[T] extends ParSeq[T] with GenericParTemplate[T, ParArray] with ParSeqLike[T, ParArray[T], ArraySeq[T]] with Serializable
Конструкторы экземпляров
новый ParArray(sz: Int)
Члены типа
класс Aggregate[S] extends Accessor[S, Aggregate[S]]
- Атрибуты
- protected[this]
- Определяющие классы
- ParIterableLike
тракт BuilderOps[Elem, To] extends AnyRef
- Определяющие классы
- ParIterableLike
класс Collect[S, That] extends Transformer[Combiner[S, That], Collect[S, That]]
- Атрибуты
- protected[this]
- Определяющие классы
- ParIterableLike
абстрактный класс Composite[FR, SR, R, First <: StrictSplitterCheckTask[FR, _], Second <: StrictSplitterCheckTask[SR, _]] extends NonDivisibleTask[R, Composite[FR, SR, R, First, Second]]
- Атрибуты
- protected[this]
- Определяющие классы
- ParIterableLike
класс Copy[U >: T, That] extends Transformer[Combiner[U, That], Copy[U, That]]
- Атрибуты
- protected
- Определяющие классы
- ParIterableLike
класс CopyToArray[U >: T, This >: Repr] extends Accessor[Unit, CopyToArray[U, This]]
- Атрибуты
- protected[this]
- Определяющие классы
- ParIterableLike
класс Count extends Accessor[Int, Count]
- Атрибуты
- protected[this]
- Определяющие классы
- ParIterableLike
класс CreateScanTree[U >: T] extends Transformer[ScanTree[U], CreateScanTree[U]]
- Атрибуты
- protected[this]
- Определяющие классы
- ParIterableLike
класс Drop[U >: T, This >: Repr] extends Transformer[Combiner[U, This], Drop[U, This]]
- Атрибуты
- protected[this]
- Определяющие классы
- ParIterableLike
класс Exists extends Accessor[Boolean, Exists]
- Атрибуты
- protected[this]
- Определяющие классы
- ParIterableLike
класс Filter[U >: T, This >: Repr] extends Transformer[Combiner[U, This], Filter[U, This]]
- Атрибуты
- protected[this]
- Определяющие классы
- ParIterableLike
класс FilterNot[U >: T, This >: Repr] extends Transformer[Combiner[U, This], FilterNot[U, This]]
- Атрибуты
- protected[this]
- Определяющие классы
- ParIterableLike
класс Find[U >: T] extends Accessor[Option[U], Find[U]]
- Атрибуты
- protected[this]
- Определяющие классы
- ParIterableLike
класс FlatMap[S, That] extends Transformer[Combiner[S, That], FlatMap[S, That]]
- Атрибуты
- protected[this]
- Определяющие классы
- ParIterableLike
класс Fold[U >: T] extends Accessor[U, Fold[U]]
- Атрибуты
- protected[this]
- Определяющие классы
- ParIterableLike
класс Forall extends Accessor[Boolean, Forall]
- Атрибуты
- protected[this]
- Определяющие классы
- ParIterableLike
класс Foreach[S] extends Accessor[Unit, Foreach[S]]
- Атрибуты
- protected[this]
- Определяющие классы
- ParIterableLike
класс FromScanTree[U >: T, That] extends StrictSplitterCheckTask[Combiner[U, That], FromScanTree[U, That]]
- Атрибуты
- protected[this]
- Определяющие классы
- ParIterableLike
класс GroupBy[K, U >: T] extends Transformer[HashMapCombiner[K, U], GroupBy[K, U]]
- Атрибуты
- protected[this]
- Определяющие классы
- ParIterableLike
класс Max[U >: T] extends Accessor[Option[U], Max[U]]
- Атрибуты
- protected[this]
- Определяющие классы
- ParIterableLike
класс Min[U >: T] extends Accessor[Option[U], Min[U]]
- Атрибуты
- protected[this]
- Определяющие классы
- ParIterableLike
тракт NonDivisible[R] extends NonDivisibleTask[R, NonDivisible[R]]
- Атрибуты
- protected[this]
- Определяющие классы
- ParIterableLike
тракт NonDivisibleTask[R, Tp] extends StrictSplitterCheckTask[R, Tp]
- Атрибуты
- protected[this]
- Определяющие классы
- ParIterableLike
абстрактный класс ParComposite[FR, SR, R, First <: StrictSplitterCheckTask[FR, _], Second <: StrictSplitterCheckTask[SR, _]] extends Composite[FR, SR, R, First, Second]
Выполняет две задачи параллельно и ждет завершения обеих.
- Атрибуты
- protected[this]
- Определяющие классы
- ParIterableLike
класс Partition[U >: T, This >: Repr] extends Transformer[(Combiner[U, This], Combiner[U, This]), Partition[U, This]]
- Атрибуты
- protected[this]
- Определяющие классы
- ParIterableLike
класс Product[U >: T] extends Accessor[U, Product[U]]
- Атрибуты
- protected[this]
- Определяющие классы
- ParIterableLike
класс Reduce[U >: T] extends Accessor[Опция[U], Reduce[U]]
- Атрибуты
- protected[this]
- Классы определений
- ParIterableLike
абстрактный класс ResultMapping[R, Tp, R1] extends NonDivisibleTask[R1, ResultMapping[R, Tp, R1]]
- Атрибуты
- protected[this]
- Классы определений
- ParIterableLike
случайный класс ScanLeaf[U >: T](pit: IterableSplitter[U], op: (U, U) ⇒ U, from: Целое число, len: Целое число, prev: Опция[ScanLeaf[U]], acc: U) extends ScanTree[U] with scala.Product with Serializable
- Атрибуты
- protected[this]
- Классы определений
- ParIterableLike
случайный класс ScanNode[U >: T](left: ScanTree[U], right: ScanTree[U]) extends ScanTree[U] with scala.Product with Serializable
- Атрибуты
- protected[this]
- Классы определений
- ParIterableLike
трактат ScanTree[U >: T] extends AnyRef
- Атрибуты
- protected[this]
- Классы определений
- ParIterableLike
абстрактный класс SeqComposite[FR, SR, R, First <: StrictSplitterCheckTask[FR, _], Second <: StrictSplitterCheckTask[SR, _]] extends Composite[FR, SR, R, First, Second]
Последовательно выполняет одну задачу за другой.
- Атрибуты
- protected[this]
- Классы определений
- ParIterableLike
трактат SignallingOps[PI <: DelegatedSignalling] extends AnyRef
- Классы определений
- ParIterableLike
класс Slice[U >: T, This >: Repr] extends Transformer[Combiner[U, This], Slice[U, This]]
- Атрибуты
- protected[this]
- Классы определений
- ParIterableLike
класс Span[U >: T, This >: Repr] extends Transformer[(Combiner[U, This], Combiner[U, This]), Span[U, This]]
- Атрибуты
- protected[this]
- Определяющие классы
- ParIterableLike
класс SplitAt[U >: T, This >: Repr] extends Transformer[(Combiner[U, This], Combiner[U, This]), SplitAt[U, This]]
- Атрибуты
- protected[this]
- Определяющие классы
- ParIterableLike
трайт StrictSplitterCheckTask[R, Tp] extends Task[R, Tp]
- Атрибуты
- protected
- Определяющие классы
- ParIterableLike
класс Sum[U >: T] extends Accessor[U, Sum[U]]
- Атрибуты
- protected[this]
- Определяющие классы
- ParIterableLike
класс Take[U >: T, This >: Repr] extends Transformer[Combiner[U, This], Take[U, This]]
- Атрибуты
- protected[this]
- Определяющие классы
- ParIterableLike
класс TakeWhile[U >: T, This >: Repr] extends Transformer[(Combiner[U, This], Boolean), TakeWhile[U, This]]
- Атрибуты
- protected[this]
- Определяющие классы
- ParIterableLike
трайт TaskOps[R, Tp] extends AnyRef
- Определяющие классы
- ParIterableLike
класс ToParCollection[U >: T, That] extends Transformer[Combiner[U, That], ToParCollection[U, That]]
- Атрибуты
- protected[this]
- Определяющие классы
- ParIterableLike
класс ToParMap[K, V, That] extends Transformer[Combiner[(K, V), That], ToParMap[K, V, That]]
- Атрибуты
- protected[this]
- Классы определения
- ParIterableLike
класс ZipAll[U >: T, S, That] extends Transformer[Combiner[(U, S), That], ZipAll[U, S, That]]
- Атрибуты
- protected[this]
- Классы определения
- ParIterableLike
тракт Accessor[R, Tp] extends ParSeqLike.Accessor[R, Tp]
- Атрибуты
- protected
- Классы определения
- ParSeqLike
класс Corresponds[S] extends Accessor[Boolean, Corresponds[S]]
- Атрибуты
- protected[this]
- Классы определения
- ParSeqLike
абстрактный класс Elements extends SeqSplitter[T] with scala.BufferedIterator[T]
Используется для итерации элементов с помощью индексов
- Атрибуты
- protected
- Классы определения
- ParSeqLike
класс IndexWhere extends Accessor[Int, IndexWhere]
- Атрибуты
- protected[this]
- Классы определения
- ParSeqLike
класс LastIndexWhere extends Accessor[Int, LastIndexWhere]
- Атрибуты
- protected[this]
- Классы определения
- ParSeqLike
класс Reverse[U >: T, This >: Repr] extends Transformer[Combiner[U, This], Reverse[U, This]]
- Атрибуты
- protected[this]
- Классы определения
- ParSeqLike
класс ReverseMap[S, That] extends Transformer[Combiner[S, That], ReverseMap[S, That]]
- Атрибуты
- protected[this]
- Классы определения
- ParSeqLike
класс SameElements[U >: T] extends Accessor[Boolean, SameElements[U]]
- Атрибуты
- protected[this]
- Классы определения
- ParSeqLike
класс SegmentLength extends Accessor[(Int, Boolean), SegmentLength]
- Атрибуты
- protected[this]
- Определяющие классы
- ParSeqLike
тракт Transformer[R, Tp] extends Accessor[R, Tp] with ParSeqLike.Transformer[R, Tp]
- Атрибуты
- protected
- Определяющие классы
- ParSeqLike
класс Updated[U >: T, That] extends Transformer[Combiner[U, That], Updated[U, That]]
- Атрибуты
- protected[this]
- Определяющие классы
- ParSeqLike
класс Zip[U >: T, S, That] extends Transformer[Combiner[(U, S), That], Zip[U, S, That]]
- Атрибуты
- protected[this]
- Определяющие классы
- ParSeqLike
класс Map[S] extends Task[Unit, Map[S]]
класс ParArrayIterator extends SeqSplitter[T]
тип SSCTask[R, Tp] = StrictSplitterCheckTask[R, Tp]
- Определяющие классы
- ParIterableLike
класс ScanToArray[U >: T] extends Task[Unit, ScanToArray[U]]
тип SuperParIterator = IterableSplitter[T]
- Атрибуты
- protected[this]
- Определяющие классы
- ParSeqLike
Члены-значения
final def !=(arg0: Any): Boolean
Проверка двух объектов на неравенство.
- возвращает
true, если !(this == that), в противном случае false.
- Definition Classes
- AnyRef → Any
final def ##(): Int
Эквивалентно x.hashCode, за исключением упакованных числовых типов и null. Для чисел возвращает значение хэша, соответствующее равенству значений: если два экземпляра типа значения сравниваются как true, то ## вернет одинаковое значение хэша для каждого из них. Для null возвращает хэш-код, где null.hashCode выбрасывает NullPointerException.
- возвращает
значение хэша, соответствующее ==
- Definition Classes
- AnyRef → Any
def +(other: String): String
- Неявный
- Этот член добавлен неявным преобразованием из ParArray[T] в any2stringadd[ParArray[T]], выполненное методом any2stringadd в scala.Predef.
- Definition Classes
- any2stringadd
def ++[U >: T, That](that: GenTraversableOnce[U])(implicit bf: CanBuildFrom[ParArray[T], U, That]): That
Возвращает новую параллельную итерабельную коллекцию, содержащую элементы левого операнда, за которыми следуют элементы правого операнда. Тип элементов параллельной итерабельной коллекции — это наиболее общий суперкласс, охватывающий типы элементов двух операндов.
- That
класс возвращаемой коллекции. По возможности,
That— это тот же класс, что и текущий класс коллекцииRepr, но это зависит от типа элементаB, который должен быть допустим для этого класса, что означает, что найден неявный экземпляр типаCanBuildFrom[Repr, B, That].- that
итерабельный объект для добавления.
- bf
неявное значение класса
CanBuildFrom, которое определяет класс результатаThatпо типу текущей коллекцииReprи новому типу элементовB.- возвращает
новую коллекцию типа
That, которая содержит все элементы этой параллельной итерабельной коллекции, за которыми следуют все элементыthat.
- Definition Classes
- ParIterableLike → GenTraversableLike
def +:(elem: A): ParArray[A]
Копия параллельного массива с добавленным элементом в начало.
Обратите внимание, что операторы с окончанием «-» являются правоассоциативными (см. пример). Мнемоника для +: по сравнению с :+: двоеточие ставится со стороны коллекции.
Также исходный параллельный массив не изменяется, поэтому вам нужно сохранить результат.
Пример:
scala> val x = List(1) x: List[Int] = List(1) scala> val y = 2 +: x y: List[Int] = List(2, 1) scala> println(x) List(1)
- elem
элемент, добавляемый в начало
- возвращает
новый параллельный массив, состоящий из
elem, за которым следуют все элементы этого параллельного массива.
- Definition Classes
- ParSeqLike → GenSeqLike
def ->[B](y: B): (ParArray[T], B)
- Неявный
- Этот член добавлен неявным преобразованием из ParArray[T] в ArrowAssoc[ParArray[T]], выполненное методом ArrowAssoc в scala.Predef.
- Definition Classes
- ArrowAssoc
- Annotations
- @inline()
def /:[S](z: S)(op: (S, T) ⇒ S): S
Применяет бинарный оператор к начальному значению и всем элементам этой параллельной итерабельной коллекции слева направо.
Примечание: /: — это альтернативная синтаксическая форма foldLeft; z /: xs — это то же самое, что и xs foldLeft z.
Примеры:
Обратите внимание, что функция сворачивания, используемая для вычисления b, эквивалентна функции, используемой для вычисления c.
scala> val a = List(1,2,3,4) a: List[Int] = List(1, 2, 3, 4) scala> val b = (5 /: a)(_+_) b: Int = 15 scala> val c = (5 /: a)((x,y) => x + y) c: Int = 15
Примечание: не завершится для коллекций бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если только тип базовой коллекции не упорядочен или оператор не является ассоциативным и коммутативным.
- z
начальное значение.
- op
бинарный оператор.
- возвращает
-
результат вставки
opмежду последовательными элементами этой параллельной итерабельной коллекции слева направо с начальным значениемzслева:op(...op(op(z, x_1), x_2), ..., x_n)
где
x1, ..., xn— это элементы этой параллельной итерабельной коллекции.
- Definition Classes
- ParIterableLike → GenTraversableOnce
def :+(elem: A): ParArray[A]
A copy of this parallel array with an element appended.
A mnemonic for +: vs. :+ is: the COLon goes on the COLlection side.
Note: will not terminate for infinite-sized collections.
Example:
scala> val a = List(1) a: List[Int] = List(1) scala> val b = a :+ 2 b: List[Int] = List(1, 2) scala> println(a) List(1)
- elem
the appended element
- returns
a new parallel array consisting of all elements of this parallel array followed by
elem.
- Definition Classes
- ParSeqLike → GenSeqLike
def :\[S](z: S)(op: (T, S) ⇒ S): S
Applies a binary operator to all elements of this parallel iterable and a start value, going right to left.
Note: :\ is alternate syntax for foldRight; xs :\ z is the same as xs foldRight z.
Note: will not terminate for infinite-sized collections.
Note: might return different results for different runs, unless the underlying collection type is ordered. or the operator is associative and commutative.
Examples:
Note that the folding function used to compute b is equivalent to that used to compute c.
scala> val a = List(1,2,3,4) a: List[Int] = List(1, 2, 3, 4) scala> val b = (a :\ 5)(_+_) b: Int = 15 scala> val c = (a :\ 5)((x,y) => x + y) c: Int = 15
- z
the start value
- op
the binary operator
- returns
-
the result of inserting
opbetween consecutive elements of this parallel iterable, going right to left with the start valuezon the right:op(x_1, op(x_2, ... op(x_n, z)...))
where
x1, ..., xnare the elements of this parallel iterable.
- Definition Classes
- ParIterableLike → GenTraversableOnce
final def ==(arg0: Any): Boolean
The expression x == that is equivalent to if (x eq null) that eq null else x.equals(that).
- returns
trueif the receiver object is equivalent to the argument;falseotherwise.
- Definition Classes
- AnyRef → Any
def aggregate[S](z: ⇒ S)(seqop: (S, T) ⇒ S, combop: (S, S) ⇒ S): S
Aggregates the results of applying an operator to subsequent elements.
This is a more general form of fold and reduce. It has similar semantics, but does not require the result to be a supertype of the element type. It traverses the elements in different partitions sequentially, using seqop to update the result, and then applies combop to results from different partitions. The implementation of this operation may operate on an arbitrary number of collection partitions, so combop may be invoked arbitrary number of times.
For example, one might want to process some elements and then produce a Set. In this case, seqop would process an element and append it to the set, while combop would concatenate two sets from different partitions together. The initial value z would be an empty set.
pc.aggregate(Set[Int]())(_ += process(_), _ ++ _)
Another example is calculating geometric mean from a collection of doubles (one would typically require big doubles for this).
- S
the type of accumulated results
- z
the initial value for the accumulated result of the partition - this will typically be the neutral element for the
seqopoperator (e.g.Nilfor list concatenation or0for summation) and may be evaluated more than once- seqop
an operator used to accumulate results within a partition
- combop
an associative operator used to combine results from different partitions
- Definition Classes
- ParIterableLike → GenTraversableOnce
def apply(i: Int): T
Selects an element by its index in the parallel array.
Example:
scala> val x = List(1, 2, 3, 4, 5) x: List[Int] = List(1, 2, 3, 4, 5) scala> x(3) res1: Int = 4
- returns
the element of this parallel array at index
idx, where0indicates the first element.
- Definition Classes
- ParArray → ParSeq → GenSeqLike
- Exceptions thrown
IndexOutOfBoundsExceptionifidxdoes not satisfy0 <= idx < length.
val arrayseq: ArraySeq[T]
final def asInstanceOf[T0]: T0
Cast the receiver object to be of type T0.
Note that the success of a cast at runtime is modulo Scala's erasure semantics. Therefore the expression 1.asInstanceOf[String] will throw a ClassCastException at runtime, while the expression List(1).asInstanceOf[List[String]] will not. In the latter example, because the type argument is erased as part of compilation it is not possible to check whether the contents of the list are of the requested type.
- returns
the receiver object.
- Definition Classes
- Any
- Exceptions thrown
ClassCastExceptionif the receiver object is not an instance of the erasure of typeT0.
def bf2seq[S, That](bf: CanBuildFrom[ParArray[T], S, That]): CanBuildFrom[ArraySeq[T], S, That]
- Attributes
- protected[this]
- Definition Classes
- ParIterableLike
implicit def builder2ops[Elem, To](cb: Builder[Elem, To]): BuilderOps[Elem, To]
- Attributes
- protected
- Definition Classes
- ParIterableLike
def canEqual(other: Any): Boolean
- Definition Classes
- ParIterableLike
def clone(): AnyRef
Создайте копию объекта-получателя.
По умолчанию реализация метода clone зависит от платформы.
- возвращает
копию объекта-получателя.
def collect[B](pf: PartialFunction[A, B]): ParArray[B]
Строит новую коллекцию, применяя частичную функцию ко всем элементам этого параллельного массива, для которых функция определена.
- B
тип элементов возвращаемой коллекции.
- pf
частичная функция, которая фильтрует и отображает параллельный массив.
- возвращает
новый параллельный массив, полученный путем применения заданной частичной функции
pfк каждому элементу, для которого она определена, и сбора результатов. Порядок элементов сохраняется.
- Definition Classes
- ParIterableLike → GenTraversableLike
def combinerFactory[S, That](cbf: () ⇒ Combiner[S, That]): CombinerFactory[S, That]
- Attributes
- protected[this]
- Definition Classes
- ParIterableLike
def combinerFactory: CombinerFactory[T, ParArray[T]]
Создаёт фабрику комбинировщиков. Каждый экземпляр фабрики комбинировщиков используется один раз при вызове метода параллельного преобразования для одной коллекции.
По умолчанию фабрика комбинировщиков создаёт новый комбинировщик каждый раз, когда он запрашивается, если только комбинировщик не является потокобезопасным, как указано его методом canBeShared. В этом случае метод возвращает фабрику, которая возвращает тот же комбинировщик каждый раз. Это обычно делается для конкурирующих параллельных коллекций, комбинировщики которых допускают потокобезопасный доступ.
- Attributes
- protected[this]
- Definition Classes
- ParIterableLike
def companion: GenericCompanion[ParArray] with GenericParCompanion[ParArray]
Объект-компаньон-фабрика, который создаёт экземпляры класса ParArray. (или его Iterable суперкласса, где класс ParArray не является Seq.)
- Definition Classes
- ParArray → ParSeq → ParSeq → ParIterable → ParIterable → GenericParTemplate → GenSeq → GenIterable → GenTraversable → GenericTraversableTemplate
def copyToArray(xs: Array[A], start: Int, len: Int): Unit
Копирует элементы этого параллельного массива в массив. Заполняет заданный массив xs не более чем len элементами этого параллельного массива, начиная с позиции start. Копирование остановится, как только будет достигнут конец текущего параллельного массива, или конец целевого массива, или len элементов будут скопированы.
Примечание: не завершится для коллекций бесконечного размера.
- xs
массив для заполнения.
- start
начальный индекс.
- len
максимальное количество элементов для копирования.
- Definition Classes
- ParIterableLike → GenTraversableOnce
def copyToArray(xs: Array[A], start: Int): Unit
Копирует элементы этого параллельного массива в массив. Заполняет заданный массив xs значениями этого параллельного массива, начиная с индекса start. Копирование остановится, как только будет достигнут конец текущего параллельного массива или конец целевого массива.
Примечание: не завершится для коллекций бесконечного размера.
- xs
массив для заполнения.
- start
начальный индекс.
- Definition Classes
- ParIterableLike → GenTraversableOnce
def copyToArray(xs: Array[A]): Unit
Копирует элементы этого параллельного массива в массив. Заполняет заданный массив xs значениями этого параллельного массива. Копирование остановится, как только будет достигнут конец текущего параллельного массива или конец целевого массива.
Примечание: не завершится для коллекций бесконечного размера.
- xs
массив для заполнения.
- Definition Classes
- ParIterableLike → GenTraversableOnce
def corresponds[S](that: GenSeq[S])(p: (T, S) ⇒ Boolean): Boolean
Проверяет, соответствуют ли каждый элемент этого параллельного итерируемого объекта соответствующему элементу другой параллельной последовательности, удовлетворяя предикату проверки.
Этот метод будет использовать abort возможности сигнализации. Это означает, что разделители могут отправлять и читать abort сигналы.
- S
тип элементов
that- that
другая параллельная последовательность
- p
предикат проверки, который связывает элементы из обеих последовательностей
- returns
true, если обе параллельные последовательности имеют одинаковую длину иp(x, y)являетсяtrueдля всех соответствующих элементовxэтого параллельного итерируемого объекта иyизthat, в противном случаеfalse
- Definition Classes
- ParSeqLike → GenSeqLike
def count(p: (T) ⇒ Boolean): Int
Подсчитывает количество элементов в параллельном итерируемом объекте, которые удовлетворяют предикату.
- p
предикат, используемый для проверки элементов.
- returns
количество элементов, удовлетворяющих предикату
p.
- Definition Classes
- ParIterableLike → GenTraversableOnce
def debugBuffer: ArrayBuffer[String]
- Definition Classes
- ParIterableLike
implicit def delegatedSignalling2ops[PI <: DelegatedSignalling](it: PI): SignallingOps[PI]
- Attributes
- protected
- Definition Classes
- ParIterableLike
def diff(that: GenSeq[A]): ParArray[A]
Вычисляет разность мультимножеств между этим параллельным массивом и другой последовательностью.
Примечание: не завершится для коллекций бесконечного размера.
- that
последовательность элементов для удаления
- returns
новый параллельный массив, который содержит все элементы этого параллельного массива, за исключением некоторых вхождений элементов, которые также появляются в
that. Если значение элементаxпоявляется n раз вthat, то первые n вхожденийxне будут частью результата, но любые последующие вхождения будут.
- Definition Classes
- ParSeqLike → GenSeqLike
def distinct: ParArray[T]
Создаёт новую параллельную итерируемую последовательность из этой параллельной итерируемой последовательности без дублирования элементов.
Примечание: не завершится для коллекций бесконечного размера.
- returns
Новая параллельная итерируемая последовательность, содержащая первое вхождение каждого элемента этой параллельной итерируемой последовательности.
- Definition Classes
- ParSeqLike → GenSeqLike
def down(p: IterableSplitter[_]): SeqSplitter[T]
- Attributes
- protected[this]
- Definition Classes
- ParSeqLike
def drop(n: Int): ParArray[T]
Выбирает все элементы, кроме первых n.
Примечание: может возвращать разные результаты при разных запусках, если тип базовой коллекции не упорядочен.
- n
количество элементов для удаления из этой параллельной итерируемой последовательности.
- returns
параллельная итерируемая последовательность, состоящая из всех элементов этой параллельной итерируемой последовательности, кроме первых
nэлементов, или же пустая параллельная итерируемая последовательность, если у этой параллельной итерируемой последовательности меньшеnэлементов. Еслиnотрицательное, не удалять никакие элементы.
- Definition Classes
- ParIterableLike → GenTraversableLike
def dropWhile(pred: (T) ⇒ Boolean): ParArray[T]
Удаляет все элементы в самом длинном префиксе элементов, удовлетворяющих предикату, и возвращает коллекцию, составленную из оставшихся элементов.
Этот метод будет использовать indexFlag возможности сигнализации. Это означает, что разделители могут устанавливать и читать состояние indexFlag. Флаг индекса первоначально установлен на максимальное целое значение.
- pred
предикат, используемый для проверки элементов
- returns
коллекция, составленная из всех элементов после самого длинного префикса элементов в этой параллельной итерируемой последовательности, которые удовлетворяют предикату
pred
- Definition Classes
- ParIterableLike → GenTraversableLike
def endsWith[S](that: GenSeq[S]): Boolean
Проверяет, заканчивается ли эта параллельная итерируемая последовательность заданной параллельной последовательностью.
Этот метод будет использовать abort возможности сигнализации. Это означает, что разделители могут отправлять и читать abort сигналы.
- S
тип элементов последовательности
that- that
текущая последовательность
- returns
trueесли эта параллельная итерируемая последовательность имеетthatв качестве суффикса,falseв противном случае
- Definition Classes
- ParSeqLike → GenSeqLike
def ensuring(cond: (ParArray[T]) ⇒ Boolean, msg: ⇒ Any): ParArray[T]
- Implicit
- Этот член добавлен неявным преобразованием из ParArray[T] в Ensuring[ParArray[T]] выполненным методом Ensuring в scala.Predef.
- Definition Classes
- Ensuring
def ensuring(cond: (ParArray[T]) ⇒ Boolean): ParArray[T]
- Implicit
- Этот член добавлен неявным преобразованием из ParArray[T] в Ensuring[ParArray[T]] выполненным методом Ensuring в scala.Predef.
- Definition Classes
- Ensuring
def ensuring(cond: Boolean, msg: ⇒ Any): ParArray[T]
- Implicit
- Этот член добавлен неявным преобразованием из ParArray[T] в Ensuring[ParArray[T]] выполненным методом Ensuring в scala.Predef.
- Definition Classes
- Ensuring
def ensuring(cond: Boolean): ParArray[T]
- Неявный
- Этот член добавлен неявным преобразованием из ParArray[T] в Ensuring[ParArray[T]] с помощью метода Ensuring в scala.Predef.
- Классы определения
- Ensuring
final def eq(arg0: AnyRef): Boolean
Проверяет, является ли аргумент (that) ссылкой на объект-получатель (this).
Метод eq реализует отношение эквивалентности на не-нулевых экземплярах AnyRef и обладает тремя дополнительными свойствами:
-
Он согласован: для любых не-нулевых экземпляров
x и y типа AnyRef многократные вызовы x.eq(y) последовательно возвращают true или последовательно возвращают false. Для любого не-нулевого экземпляра x типа AnyRef, x.eq(null) и null.eq(x) возвращают false.
null.eq(null) возвращает true. При переопределении методов equals или hashCode важно обеспечить согласованность их поведения с равенством ссылок. Таким образом, если два объекта являются ссылками друг на друга (o1 eq o2), они должны быть равны друг другу (o1 == o2) и должны иметь одинаковое значение хэша (o1.hashCode == o2.hashCode).
- возвращает
true, если аргумент является ссылкой на объект-получатель;falseв противном случае.
- Классы определения
- AnyRef
def equals(that: Any): Boolean
Метод equals для произвольных последовательностей. Сравнивает эту последовательность с другим объектом.
- that
Объект для сравнения с последовательностью
- возвращает
true, еслиthatявляется последовательностью, которая имеет те же элементы, что и эта последовательность в том же порядке;falseв противном случае
- Классы определения
- GenSeqLike → Equals → Any
def exists(p: (T) ⇒ Boolean): Boolean
Проверяет, выполняется ли предикат для какого-либо элемента этого параллельного итерируемого объекта.
Этот метод будет использовать abort возможности сигнализации. Это означает, что разделители могут отправлять и читать abort сигналы.
- p
предикат для проверки элементов
- возвращает
true, если
pвыполняется для какого-либо элемента, false в противном случае
- Классы определения
- ParIterableLike → GenTraversableOnce
def filter(pred: (T) ⇒ Boolean): ParArray[T]
Выбирает все элементы этого параллельного итерируемого объекта, которые удовлетворяют предикату.
- pred
предикат для проверки элементов.
- возвращает
новый параллельный итерируемый объект, состоящий из всех элементов этого параллельного итерируемого объекта, которые удовлетворяют заданному предикату
p. Порядок элементов может не сохраняться.
- Классы определения
- ParIterableLike → GenTraversableLike
def filterNot(pred: (T) ⇒ Boolean): ParArray[T]
Выбирает все элементы этого параллельного итерируемого объекта, которые не удовлетворяют предикату.
- pred
предикат для проверки элементов.
- возвращает
новый параллельный итерируемый объект, состоящий из всех элементов этого параллельного итерируемого объекта, которые не удовлетворяют заданному предикату
p. Порядок элементов может не сохраняться.
- Классы определения
- ParIterableLike → GenTraversableLike
def finalize(): Unit
Вызывается сборщиком мусора для объекта-получателя, когда к объекту больше нет ссылок.
Подробности о том, когда и будет ли вызываться метод finalize, а также взаимодействие между finalize и нелокальными возвратами и исключениями, зависят от платформы.
- Атрибуты
- protected[lang]
- Классы определения
- AnyRef
- Аннотации
- @throws( classOf[java.lang.Throwable] )
- Примечание
не определен в SLS как член AnyRef
def find(p: (T) ⇒ Boolean): Option[T]
Находит какой-либо элемент в коллекции, для которого выполняется предикат, если такой элемент существует. Элемент не обязательно должен быть первым таким элементом в порядке итерации.
Если существует несколько элементов, удовлетворяющих предикату, выбор не детерминирован.
Этот метод будет использовать abort возможности сигнализации. Это означает, что разделители могут отправлять и читать abort сигналы.
- p
предикат для проверки элементов
- возвращает
значения типа Option с элементом, если такой элемент существует, или
Noneв противном случае
- Классы определения
- ParIterableLike → GenTraversableOnce
def flatMap[B](f: (A) ⇒ GenTraversableOnce[B]): ParArray[B]
Создаёт новую коллекцию, применяя функцию ко всем элементам этого параллельного массива и используя элементы получившихся коллекций.
Например:
def getWords(lines: Seq[String]): Seq[String] = lines flatMap (line => line split "\\W+")
Тип результирующей коллекции определяется статическим типом параллельного массива. Это может иногда приводить к неожиданным результатам. Например:
// lettersOf will return a Seq[Char] of likely repeated letters, instead of a Set
def lettersOf(words: Seq[String]) = words flatMap (word => word.toSet)
// lettersOf will return a Set[Char], not a Seq
def lettersOf(words: Seq[String]) = words.toSet flatMap (word => word.toSeq)
// xs will be an Iterable[Int]
val xs = Map("a" -> List(11,111), "b" -> List(22,222)).flatMap(_._2)
// ys will be a Map[Int, Int]
val ys = Map("a" -> List(1 -> 11,1 -> 111), "b" -> List(2 -> 22,2 -> 222)).flatMap(_._2)
- B
тип элементов возвращаемой коллекции.
- f
функция, применяемая к каждому элементу.
- returns
новый параллельный массив, полученный путём применения данной функции, возвращающей коллекцию
f, к каждому элементу этого параллельного массива и конкатенации результатов.
- Definition Classes
- ParIterableLike → GenTraversableLike
def flatten[B]: ParArray[B]
Преобразует этот параллельный массив коллекций итерируемых объектов в параллельный массив, образованный элементами этих коллекций.
Тип результирующей коллекции определяется статическим типом параллельного массива. Например:
val xs = List(
Set(1, 2, 3),
Set(1, 2, 3)
).flatten
// xs == List(1, 2, 3, 1, 2, 3)
val ys = Set(
List(1, 2, 3),
List(3, 2, 1)
).flatten
// ys == Set(1, 2, 3)
- B
тип элементов каждой коллекции итерируемых объектов.
- returns
новый параллельный массив, полученный путём конкатенации всех параллельных массивов элементов.
- Definition Classes
- GenericTraversableTemplate
def fold[U >: T](z: U)(op: (U, U) ⇒ U): U
Производит свёртку элементов этой последовательности, используя указанный ассоциативный бинарный оператор. Порядок, в котором элементы сворачиваются, не определён и может быть не детерминированным.
Обратите внимание, что у этого метода отличается сигнатура от методов foldLeft и foldRight трейта Traversable. Результат сворачивания может быть только супертипом параметра типа этой параллельной коллекции T.
- U
параметр типа для бинарного оператора, являющийся супертипом
T.- z
нейтральный элемент для операции сворачивания, его можно добавлять к результату произвольное количество раз, не изменяя результат (например,
Nilдля конкатенации списков, 0 для сложения или 1 для умножения)- op
бинарный оператор, который должен быть ассоциативным
- returns
результат применения оператора сворачивания
opмежду всеми элементами иz
- Definition Classes
- ParIterableLike → GenTraversableOnce
def foldLeft[S](z: S)(op: (S, T) ⇒ S): S
Применяет бинарный оператор к начальному значению и всем элементам этой параллельной итерируемой последовательности слева направо.
Примечание: не будет завершаться для бесконечных коллекций.
Примечание: может возвращать разные результаты для разных запусков, если тип коллекции не упорядочен. или оператор ассоциативен и коммутативен.
- z
начальное значение.
- op
бинарный оператор.
- returns
-
результат вставки
opмежду последовательными элементами этой параллельной итерируемой последовательности слева направо с начальным значениемzслева:op(...op(z, x_1), x_2, ..., x_n)
где
x1, ..., xn- элементы этой параллельной итерируемой последовательности. Возвращаетz, если эта параллельная итерируемая последовательность пуста.
- Definition Classes
- ParIterableLike → GenTraversableOnce
def foldRight[S](z: S)(op: (T, S) ⇒ S): S
Применяет бинарный оператор ко всем элементам этой параллельной итерируемой последовательности и начальному значению, справа налево.
Примечание: не будет завершаться для бесконечных коллекций.
Примечание: может возвращать разные результаты для разных запусков, если тип коллекции не упорядочен. или оператор ассоциативен и коммутативен.
- z
начальное значение.
- op
бинарный оператор.
- returns
-
результат вставки
opмежду последовательными элементами этой параллельной итерируемой последовательности справа налево с начальным значениемzсправа:op(x_1, op(x_2, ... op(x_n, z)...))
где
x1, ..., xn- элементы этой параллельной итерируемой последовательности. Возвращаетz, если эта параллельная итерируемая последовательность пуста.
- Definition Classes
- ParIterableLike → GenTraversableOnce
def forall(p: (T) ⇒ Boolean): Boolean
Проверяет, выполняется ли предикат для всех элементов этой параллельной итерируемой последовательности.
Этот метод будет использовать abort возможности сигнализации. Это означает, что разделители могут посылать и читать abort сигналы.
- p
предикат, используемый для проверки элементов
- returns
true, если
pвыполняется для всех элементов, иначе false
- Definition Classes
- ParIterableLike → GenTraversableOnce
def foreach[U](f: (T) ⇒ U): Unit
Применяет функцию f ко всем элементам параллельного итерируемого объекта в неопределённом порядке.
- U
тип результата функции, применяемой к каждому элементу, который всегда отбрасывается
- f
функция, применяемая к каждому элементу
- Определяющие классы
- ParIterableLike → GenTraversableLike → GenTraversableOnce
def formatted(fmtstr: String): String
Возвращает строку, отформатированную в соответствии с заданной format строкой. Форматные строки соответствуют String.format (@see java.lang.String.format).
- Неявный
- Этот член добавляется неявным преобразованием из ParArray[T] в StringFormat[ParArray[T]], выполняемым методом StringFormat в scala.Predef.
- Определяющие классы
- StringFormat
- Аннотации
- @inline()
def genericBuilder[B]: Combiner[B, ParArray[B]]
Генератор, который строит экземпляры Traversable с произвольными типами элементов.
- Определяющие классы
- GenericParTemplate → GenericTraversableTemplate
def genericCombiner[B]: Combiner[B, ParArray[B]]
- Определяющие классы
- GenericParTemplate
final def getClass(): Class[_]
Возвращает представление runtime-класса объекта.
- возвращает
объект класса, соответствующий runtime-типу получателя.
def groupBy[K](f: (T) ⇒ K): immutable.ParMap[K, ParArray[T]]
Разбивает этот параллельный итерируемый объект на карту параллельных итерируемых объектов в соответствии с функцией-дискриминатором.
Примечание: этот метод не переопределяется представлениями. Это означает, что при применении к представлению он всегда принудительно вычисляет представление и возвращает новый параллельный итерируемый объект.
- K
тип ключей, возвращаемых функцией-дискриминатором.
- f
функция-дискриминатор.
- возвращает
-
Карта из ключей в параллельные итерируемые объекты, удовлетворяющая следующему инварианту:
(xs groupBy f)(k) = xs filter (x => f(x) == k)
То есть, каждый ключ
kсвязан с параллельным итерируемым объектом тех элементовx, для которыхf(x)равноk.
- Определяющие классы
- ParIterableLike → GenTraversableLike
def hasDefiniteSize: Boolean
Проверяет, известен ли размер этого параллельного итерируемого объекта как конечный. Все строгие коллекции известны как имеющие конечный размер. Для нестрогой коллекции, такой как Stream, предикат возвращает true, если все элементы были вычислены. Он возвращает false, если поток ещё не обработан до конца. Непустые итераторы обычно возвращают false, даже если они были созданы из коллекции с известным конечным размером.
Примечание: многие методы коллекций не будут работать с коллекциями бесконечных размеров. Типичный режим отказа - бесконечный цикл. Эти методы всегда пытаются выполнить обход, не проверяя сначала, что hasDefiniteSize возвращает true. Однако проверка hasDefiniteSize может обеспечить уверенность в том, что размер определён и бесконечная работа не является проблемой.
- возвращает
true, если эта коллекция известна как имеющая конечный размер,falseв противном случае.
- Определяющие классы
- ParIterableLike → GenTraversableOnce
def hashCode(): Int
Хеш-коды для GenSeq производят значение из хеш-кодов всех элементов общей последовательности.
- возвращает
значение хеш-кода для этого объекта.
- Определяющие классы
- GenSeqLike → Any
def head: T
Выбирает первый элемент этого параллельного итерируемого объекта.
Примечание: может возвращать разные результаты для разных запусков, если только тип базовой коллекции не упорядочен.
- возвращает
первый элемент этого параллельного итерируемого объекта.
- Определяющие классы
- ParIterableLike → GenTraversableLike
- Исключения
NoSuchElementException, если параллельный итерируемый объект пуст.
def headOption: Option[T]
Необязательно выбирает первый элемент.
Примечание: может возвращать разные результаты при разных запусках, если тип базовой коллекции не упорядочен.
- возвращает
первый элемент этого параллельного итерируемого объекта, если он не пустой,
None, если он пустой.
- Определяющие классы
- ParIterableLike → GenTraversableLike
def indexOf(elem: T, from: Int): Int
Находит индекс первого вхождения некоторого значения в этом параллельном массиве после или на некотором начальном индексе.
Примечание: может не завершаться для коллекций бесконечного размера.
- elem
значение искомого элемента.
- from
начальный индекс
- возвращает
индекс
>= fromпервого элемента этого параллельного массива, который равен (как определяется==)elem, или-1, если такого элемента нет.
- Определяющие классы
- GenSeqLike
def indexOf(elem: T): Int
Находит индекс первого вхождения некоторого значения в этом параллельном массиве.
Примечание: может не завершаться для коллекций бесконечного размера.
- elem
значение искомого элемента.
- возвращает
индекс первого элемента этого параллельного массива, который равен (как определяется
==)elem, или-1, если такого элемента нет.
- Определяющие классы
- GenSeqLike
def indexWhere(p: (T) ⇒ Boolean, from: Int): Int
Находит первый элемент, удовлетворяющий некоторому предикату.
Этот метод будет использовать возможности indexFlag сигнализации. Это означает, что разделители могут установить и прочитать состояние indexFlag.
Флаг индекса изначально устанавливается в максимальное целочисленное значение.
- p
предикат, используемый для проверки элементов
- from
начальный смещение для поиска
- возвращает
индекс
>= fromпервого элемента этого параллельного итерируемого объекта, который удовлетворяет предикатуp, или-1, если такого элемента нет
- Определяющие классы
- ParSeqLike → GenSeqLike
def indexWhere(p: (T) ⇒ Boolean): Int
Находит индекс первого элемента, удовлетворяющего некоторому предикату.
Примечание: может не завершаться для коллекций бесконечного размера.
- p
предикат, используемый для проверки элементов.
- возвращает
индекс первого элемента этой общей последовательности, удовлетворяющего предикату
p, или-1, если такого элемента нет.
- Определяющие классы
- GenSeqLike
def init: ParArray[T]
Выбирает все элементы, кроме последнего.
Примечание: может возвращать разные результаты при разных запусках, если тип базовой коллекции не упорядочен.
- возвращает
параллельный итерируемый объект, состоящий из всех элементов этого параллельного итерируемого объекта, кроме последнего.
- Определяющие классы
- ParIterableLike → GenTraversableLike
- Исключения
UnsupportedOperationException, если параллельный итерируемый объект пустой.
def initTaskSupport(): Unit
- Атрибуты
- защищенное
- Определяющие классы
- ParIterableLike
def intersect(that: scala.Seq[T]): ParArray[T]
Вычисляет пересечение мультимножеств между этим параллельным массивом и другой последовательностью.
Примечание: может не завершаться для коллекций бесконечного размера.
- that
последовательность элементов для пересечения.
- возвращает
новый параллельный массив, содержащий все элементы этого параллельного массива, которые также появляются в
that. Если значение элементаxвстречается n раз вthat, то первые n вхожденийxбудут сохранены в результате, но любые последующие вхождения будут пропущены.
- Определяющие классы
- ParSeqLike → GenSeqLike
def isDefinedAt(idx: Int): Boolean
Проверяет, содержит ли эта общая последовательность указанный индекс.
Реализации методов apply и isDefinedAt преобразуют Seq[A] в PartialFunction[Int, A].
- idx
индекс для проверки
- возвращает
true, если эта общая последовательность содержит элемент в позицииidx,falseв противном случае.
- Определяющие классы
- GenSeqLike
def isEmpty: Boolean
Проверяет, является ли параллельный итерируемый объект пустым.
Примечание: Реализации в подклассах, которые не являются многократно проходимыми, должны следить за тем, чтобы не потреблять никаких элементов при вызове isEmpty.
- returns
true, если параллельный итерируемый объект не содержит элементов,falseв противном случае.
- Definition Classes
- ParIterableLike → GenTraversableOnce
final def isInstanceOf[T0]: Boolean
Проверка, является ли динамический тип объекта-получателя T0.
Обратите внимание, что результат теста зависит от семантики стирания Scala. Поэтому выражение 1.isInstanceOf[String] вернёт false, а выражение List(1).isInstanceOf[List[String]] вернёт true. В последнем примере, поскольку аргумент типа стирается во время компиляции, невозможно проверить, содержат ли элементы списка указанный тип.
- returns
true, если объект-получатель является экземпляром стираемого типаT0;falseв противном случае.
- Definition Classes
- Any
def isStrictSplitterCollection: Boolean
Определяет, имеет ли это параллельное множество строгие разделители.
В общем случае это верно, и отдельные экземпляры коллекций могут переопределить этот метод. Такие коллекции не смогут выполнить методы, которые полагаются на то, что разделители являются строгими, т. е. возвращают правильное значение в методе remaining.
Этот метод помогает гарантировать, что такие ошибки возникнут при вызове метода, а не позже и непредсказуемым образом.
- Definition Classes
- ParIterableLike
final def isTraversableAgain: Boolean
Проверяет, можно ли многократно пройтись по этому параллельному итерируемому объекту.
- returns
true
- Definition Classes
- ParIterableLike → GenTraversableLike → GenTraversableOnce
def iterator: PreciseSplitter[T]
Создаёт новый итератор разбиения, используемый для обхода элементов этой коллекции.
По умолчанию этот метод реализован через защищённый метод splitter.
- returns
итератор разбиения
- Definition Classes
- ParSeqLike → ParIterableLike → GenIterableLike
def last: T
Выбирает последний элемент.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не является упорядоченным.
- returns
Последний элемент этого параллельного итерируемого объекта.
- Definition Classes
- ParIterableLike → GenTraversableLike
- Exceptions thrown
NoSuchElementExceptionЕсли параллельный итерируемый объект пуст.
def lastIndexOf(elem: T, end: Int): Int
Находит индекс последнего вхождения некоторого значения в этом параллельном массиве до или на заданном индексе конца.
- elem
значение элемента, для которого требуется выполнить поиск.
- end
индекс конца.
- returns
индекс
<= endпоследнего элемента этого параллельного массива, равного (как определено==)elem, или-1, если такой элемент не найден.
- Definition Classes
- GenSeqLike
def lastIndexOf(elem: T): Int
Находит индекс последнего вхождения некоторого значения в этом параллельном массиве.
Примечание: не завершится для коллекций бесконечного размера.
- elem
значение элемента, для которого требуется выполнить поиск.
- returns
индекс последнего элемента этого параллельного массива, равного (как определено
==)elem, или-1, если такой элемент не найден.
- Definition Classes
- GenSeqLike
def lastIndexWhere(p: (T) ⇒ Boolean, end: Int): Int
Находит последний элемент, удовлетворяющий некоторому предикату.
Этот метод будет использовать возможности сигнализации indexFlag. Это означает, что разделители могут устанавливать и считывать состояние indexFlag.
Флаг индекса изначально устанавливается в минимальное целое значение.
- p
предикат, используемый для проверки элементов
- end
максимальное смещение для поиска
- returns
индекс
<= endпервого элемента этого параллельного итерируемого объекта, удовлетворяющего предикатуp, или-1, если такой элемент не найден
- Definition Classes
- ParSeqLike → GenSeqLike
def lastIndexWhere(p: (T) ⇒ Boolean): Int
Находит индекс последнего элемента, удовлетворяющего некоторому предикату.
Примечание: не завершится для коллекций бесконечного размера.
- p
предикат, используемый для проверки элементов.
- returns
индекс последнего элемента этого общего последовательного объекта, удовлетворяющего предикату
p, или-1, если такой элемент не найден.
- Definition Classes
- GenSeqLike
def lastOption: Option[T]
Возвращает последний элемент.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен.
- returns
последний элемент этого параллельного итерируемого объекта, если он не пустой,
Noneесли он пустой.
- Definition Classes
- ParIterableLike → GenTraversableLike
def length: Int
Длина параллельного массива.
Примечание: не завершится для коллекций бесконечного размера.
Примечание: xs.length и xs.size дают одинаковый результат.
- returns
количество элементов в этом параллельном массиве.
- Definition Classes
- ParArray → GenSeqLike
- Exceptions thrown
IllegalArgumentException, если длина последовательности не может быть представлена вInt, например,(-1 to Int.MaxValue).length.
def map[B](f: (A) ⇒ B): ParArray[B]
Создаёт новую коллекцию, применяя функцию ко всем элементам этого параллельного массива.
- B
тип элементов возвращаемой коллекции.
- f
функция для применения к каждому элементу.
- returns
новый параллельный массив, полученный путём применения заданной функции
fк каждому элементу этого параллельного массива и сбора результатов.
- Definition Classes
- ParArray → ParIterableLike → GenTraversableLike
def max: A
Находит наибольший элемент.
- returns
наибольший элемент этого параллельного массива.
- Definition Classes
- ParIterableLike → GenTraversableOnce
- Exceptions thrown
UnsupportedOperationException, если этот параллельный массив пуст.
def maxBy[B](f: (A) ⇒ B): A
Находит первый элемент, который даёт наибольшее значение, измеренное функцией f.
- B
Тип результата функции f.
- f
Функция измерения.
- returns
первый элемент этого параллельного массива с наибольшим значением, измеренным функцией f.
- Definition Classes
- ParIterableLike → GenTraversableOnce
- Exceptions thrown
UnsupportedOperationExceptionесли этот параллельный массив пуст.
def min: A
Находит наименьший элемент.
- returns
наименьший элемент этого параллельного массива.
- Definition Classes
- ParIterableLike → GenTraversableOnce
- Exceptions thrown
UnsupportedOperationException, если этот параллельный массив пуст.
def minBy[B](f: (A) ⇒ B): A
Находит первый элемент, который даёт наименьшее значение, измеренное функцией f.
- B
Тип результата функции f.
- f
Функция измерения.
- returns
первый элемент этого параллельного массива с наименьшим значением, измеренным функцией f.
- Definition Classes
- ParIterableLike → GenTraversableOnce
- Exceptions thrown
UnsupportedOperationException, если этот параллельный массив пуст.
def mkString: String
Отображает все элементы этого параллельного итерируемого объекта в строке.
- returns
строковое представление этого параллельного итерируемого объекта. В результирующей строке строковые представления (согласно методу
toString) всех элементов этого параллельного итерируемого объекта следуют друг за другом без разделительной строки.
- Definition Classes
- ParIterableLike → GenTraversableOnce
def mkString(sep: String): String
Отображает все элементы этого параллельного итерируемого объекта в строке с использованием разделительной строки.
- sep
строка-разделитель.
- returns
строковое представление этого параллельного итерируемого объекта. В результирующей строке строковые представления (с точки зрения метода
toString) всех элементов этого параллельного итерируемого объекта разделены строкойsep.
- Definition Classes
- ParIterableLike → GenTraversableOnce
List(1, 2, 3).mkString("|") = "1|2|3"
def mkString(start: String, sep: String, end: String): String
Отображает все элементы этого параллельного итерируемого объекта в строке, используя начальную, конечную и разделительные строки.
- start
начальная строка.
- sep
разделительная строка.
- end
конечная строка.
- returns
строковое представление этого параллельного итерируемого объекта. Результирующая строка начинается со строки
startи заканчивается строкойend. Между ними строковые представления (с точки зрения методаtoString) всех элементов этого параллельного итерируемого объекта разделяются строкойsep.
- Definition Classes
- ParIterableLike → GenTraversableOnce
List(1, 2, 3).mkString("(", "; ", ")") = "(1; 2; 3)"
final def ne(arg0: AnyRef): Boolean
Эквивалентно !(this eq that).
- returns
true, если аргумент не является ссылкой на объект-получатель;falseв противном случае.
- Definition Classes
- AnyRef
def newBuilder: Builder[T, ParArray[T]]
Построитель, создающий экземпляры типа Traversable[A]
- Attributes
- protected[this]
- Definition Classes
- GenericParTemplate → GenericTraversableTemplate → HasNewBuilder
def newCombiner: Combiner[T, ParArray[T]]
- Attributes
- protected[this]
- Definition Classes
- GenericParTemplate → HasNewCombiner
def nonEmpty: Boolean
Проверяет, не является ли параллельное итерируемое пустым.
- returns
true, если параллельное итерируемое содержит хотя бы один элемент;falseв противном случае.
- Definition Classes
- ParIterableLike → GenTraversableOnce
final def notify(): Unit
Разбуживает единственную нить, ожидающую монитора объекта-получателя.
- Definition Classes
- AnyRef
- Annotations
- @native()
- Note
не указано в SLS как член AnyRef
final def notifyAll(): Unit
Разбуживает все нити, ожидающие монитора объекта-получателя.
- Definition Classes
- AnyRef
- Annotations
- @native()
- Note
не указано в SLS как член AnyRef
def padTo(len: Int, elem: A): ParArray[A]
Копия этого параллельного массива с добавленными элементами значения до достижения заданной целевой длины.
- len
целевая длина
- elem
значение дополнения
- returns
новый параллельный массив, состоящий из всех элементов этого параллельного массива, за которым следует минимальное количество вхождений
elem, так что результирующий параллельный массив имеет длину не менееlen.
- Definition Classes
- ParSeqLike → GenSeqLike
def par: ParArray[T]
Возвращает параллельную реализацию этой коллекции.
Для большинства типов коллекций этот метод создает новую параллельную коллекцию, копируя все элементы. Для этих коллекций par занимает линейное время. Мутабельные коллекции в этой категории не создают мутабельную параллельную коллекцию, имеющую ту же базу данных, поэтому изменения в одной коллекции не будут отражены в другой.
Конкретные коллекции (например, ParArray или mutable.ParHashMap) переопределяют это поведение по умолчанию, создавая параллельную коллекцию, которая использует ту же базу данных. Для этих коллекций par занимает постоянное или сублинейное время.
Все параллельные коллекции возвращают ссылку на себя.
- returns
параллельную реализацию этой коллекции
- Definition Classes
- ParIterableLike → CustomParallelizable → Parallelizable
def parCombiner: Combiner[T, ParArray[T]]
Реализация по умолчанию par использует комбинирователь, предоставленный этим методом, для создания новой параллельной коллекции.
- returns
комбинирователь для параллельной коллекции типа
ParRepr
- Attributes
- protected[this]
- Definition Classes
- CustomParallelizable → Parallelizable
def partition(pred: (T) ⇒ Boolean): (ParArray[T], ParArray[T])
Разделяет этот параллельный итерируемый объект на две параллельных итерируемых объекта в соответствии с предикатом.
- pred
предикат, по которому происходит разделение.
- returns
пара параллельных итерируемых объектов: первый параллельный итерируемый объект состоит из всех элементов, которые удовлетворяют предикату
p, а второй параллельный итерируемый объект состоит из всех элементов, которые не удовлетворяют предикату. Относительный порядок элементов в полученных параллельных итерируемых объектах может быть не сохранён.
- Definition Classes
- ParIterableLike → GenTraversableLike
def patch(from: Int, that: GenSeq[A], replaced: Int): ParArray[A]
Создаёт новый параллельный массив, где фрагмент элементов в этом параллельном массиве заменяется другой последовательностью.
- from
индекс первого заменяемого элемента
- replaced
количество элементов для удаления в исходном параллельном массиве
- returns
новый параллельный массив, состоящий из всех элементов этого параллельного массива за исключением того, что
replacedэлементы, начиная сfrom, заменены наpatch.
- Definition Classes
- ParSeqLike → GenSeqLike
def prefixLength(p: (T) ⇒ Boolean): Int
Возвращает длину самого длинного префикса, элементы которого удовлетворяют предикату.
Примечание: может не завершиться для коллекций бесконечного размера.
- p
предикат, используемый для проверки элементов.
- returns
длину самого длинного префикса этой последовательности, такой что каждый элемент сегмента удовлетворяет предикату
p.
- Definition Classes
- GenSeqLike
def product: A
Перемножает элементы этой коллекции.
- returns
произведение всех элементов в этом параллельном массиве чисел типа
Int. ВместоInt, любой другой типTс неявнойNumeric[T]реализацией может быть использован в качестве типа элемента параллельного массива и типа результатаproduct. Примеры таких типов:Long,Float,Double,BigInt.
- Definition Classes
- ParIterableLike → GenTraversableOnce
def reduce[U >: T](op: (U, U) ⇒ U): U
Сводит элементы этой последовательности с помощью указанного ассоциативного бинарного оператора.
Порядок выполнения операций над элементами не определён и может быть недетерминированным.
Обратите внимание, что этот метод имеет другую сигнатуру, чем методы reduceLeft и reduceRight трейта Traversable. Результат сокращения может быть только надтипом параметра типа этой параллельной коллекции T.
- U
Параметр типа для бинарного оператора, надтип
T.- op
Бинарный оператор, который должен быть ассоциативным.
- returns
Результат применения оператора reduce
opмежду всеми элементами, если коллекция не пуста.
- Definition Classes
- ParIterableLike → GenTraversableOnce
- Исключения
UnsupportedOperationException, если этот параллельный итерируемый объект пуст.
def reduceLeft[U >: T](op: (U, T) ⇒ U): U
- Definition Classes
- ParIterableLike
def reduceLeftOption[U >: T](op: (U, T) ⇒ U): Option[U]
Необязательно применяет бинарный оператор ко всем элементам этого параллельного итерируемого объекта, слева направо.
Примечание: не будет завершаться для коллекций бесконечного размера.
Примечание: может возвращать разные результаты при разных запусках, если только тип базовой коллекции упорядочен или оператор ассоциативен и коммутативен.
- op
бинарный оператор.
- returns
значение типа Option, содержащее результат
reduceLeft(op), если этот параллельный итерируемый объект не пустой,Noneв противном случае.
- Definition Classes
- ParIterableLike → GenTraversableOnce
def reduceOption[U >: T](op: (U, U) ⇒ U): Option[U]
Необязательно сводит элементы этой последовательности с помощью указанного ассоциативного бинарного оператора.
Порядок выполнения операций над элементами не определен и может быть недетерминированным.
Обратите внимание, что этот метод имеет разный синтаксис, чем методы reduceLeftOption и reduceRightOption в трайте Traversable. Результат сокращения может быть только надтипом параметра типа этой параллельной коллекции T.
- U
Параметр типа для бинарного оператора, надтип
T.- op
Бинарный оператор, который должен быть ассоциативным.
- returns
Значение типа Option, содержащее результат применения оператора reduce
opмежду всеми элементами, если коллекция не пуста, иNoneв противном случае.
- Definition Classes
- ParIterableLike → GenTraversableOnce
def reduceRight[U >: T](op: (T, U) ⇒ U): U
Применяет бинарный оператор ко всем элементам этого параллельного итерируемого объекта, справа налево.
Примечание: не будет завершаться для коллекций бесконечного размера.
Примечание: может возвращать разные результаты при разных запусках, если только тип базовой коллекции упорядочен или оператор ассоциативен и коммутативен.
- op
бинарный оператор.
- returns
-
результат вставки
opмежду последовательными элементами этого параллельного итерируемого объекта, справа налево:op(x_1, op(x_2, ..., op(x_{n-1}, x_n)...))где
x1, ..., xn- элементы этого параллельного итерируемого объекта.
- Definition Classes
- ParIterableLike → GenTraversableOnce
- Exceptions thrown
UnsupportedOperationException, если этот параллельный итерируемый объект пуст.
def reduceRightOption[U >: T](op: (T, U) ⇒ U): Option[U]
Необязательно применяет бинарный оператор ко всем элементам этого параллельного итерируемого объекта, справа налево.
Примечание: не будет завершаться для коллекций бесконечного размера.
Примечание: может возвращать разные результаты при разных запусках, если только тип базовой коллекции упорядочен или оператор ассоциативен и коммутативен.
- op
бинарный оператор.
- returns
значение типа Option, содержащее результат
reduceRight(op), если этот параллельный итерируемый объект не пустой,Noneв противном случае.
- Definition Classes
- ParIterableLike → GenTraversableOnce
def repr: ParArray[T]
- Definition Classes
- ParIterableLike → GenTraversableLike
def reuse[S, That](oldc: Option[Combiner[S, That]], newc: Combiner[S, That]): Combiner[S, That]
Необязательно повторно использует существующий комбинируемый объект для повышения производительности. По умолчанию он не делает этого — подклассы могут переопределить это поведение. Предоставленный комбинируемый объект oldc, который потенциально может быть повторно использован, будет либо некоторым комбинируемым объектом из предыдущей вычислительной задачи, или None, если не было предыдущей фазы (в этом случае этот метод должен вернуть newc).
- oldc
Комбинируемый объект, который является результатом предыдущей задачи, или
None, если не было предыдущей задачи.- newc
Новый, пустой комбинируемый объект, который можно использовать.
- returns
Либо
newc, либоoldc.
- Attributes
- protected
- Definition Classes
- ParIterableLike
def reverse: ParArray[T]
Возвращает новый параллельный итерируемый объект с элементами в обратном порядке.
Примечание: не будет завершаться для коллекций бесконечного размера.
- returns
Новый параллельный итерируемый объект со всеми элементами этого параллельного итерируемого объекта в обратном порядке.
- Definition Classes
- ParSeqLike → GenSeqLike
def reverseMap[B](f: (A) ⇒ B): ParArray[B]
Создаёт новую коллекцию, применяя функцию ко всем элементам этого параллельного массива и собирая результаты в обратном порядке.
Примечание: не завершится для коллекций бесконечного размера.
Примечание: xs.reverseMap(f) эквивалентно xs.reverse.map(f), но может быть более эффективным.
- B
тип элементов возвращаемой коллекции.
- f
функция, применяемая к каждому элементу.
- returns
новый параллельный массив, полученный путём применения данной функции
fк каждому элементу этого параллельного массива и сбора результатов в обратном порядке.
- Definition Classes
- ParSeqLike → GenSeqLike
def sameElements(that: GenIterable[A]): Boolean
Проверяет, содержит ли другая итерируемая коллекция те же элементы в том же порядке, что и этот параллельный массив.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен.
Примечание: не завершится для коллекций бесконечного размера.
- that
коллекция для сравнения.
- returns
true, если обе коллекции содержат одинаковые элементы в том же порядке,falseв противном случае.
- Definition Classes
- ParSeqLike → ParIterableLike → GenIterableLike
def scan(z: T)(op: (T, T) ⇒ T): ParArray[T]
Вычисляет префиксный скан элементов коллекции.
Примечание: нейтральный элемент z может применяться более одного раза.
- z
нейтральный элемент для оператора
op- op
ассоциативный оператор для сканирования
- returns
новый параллельный массив, содержащий префиксный скан элементов в этом параллельном массиве
- Definition Classes
- ParArray → ParIterableLike → GenTraversableLike
def scanBlockSize: Int
- Attributes
- protected[this]
- Definition Classes
- ParIterableLike
def scanLeft[S, That](z: S)(op: (S, T) ⇒ S)(implicit bf: CanBuildFrom[ParArray[T], S, That]): That
Создаёт коллекцию, содержащую кумулятивные результаты применения оператора слева направо.
Примечание: не завершится для коллекций бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен.
- That
фактический тип возвращаемой коллекции
- z
начальное значение
- op
бинарный оператор, применяемый к промежуточному результату и элементу
- bf
неявное значение класса
CanBuildFrom, которое определяет тип результатаThatиз текущего типа представленияReprи нового типа элементаB.- returns
коллекция с промежуточными результатами
- Definition Classes
- ParIterableLike → GenTraversableLike
def scanRight[S, That](z: S)(op: (T, S) ⇒ S)(implicit bf: CanBuildFrom[ParArray[T], S, That]): That
Создаёт коллекцию, содержащую кумулятивные результаты применения оператора справа налево. Голова коллекции — последний кумулятивный результат.
Примечание: не завершится для коллекций бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен.
Пример:
List(1, 2, 3, 4).scanRight(0)(_ + _) == List(10, 9, 7, 4, 0)
- That
фактический тип возвращаемой коллекции
- z
начальное значение
- op
бинарный оператор, применяемый к промежуточному результату и элементу
- bf
неявное значение класса
CanBuildFrom, которое определяет тип результатаThatиз текущего типа представленияReprи нового типа элементаB.- returns
коллекция с промежуточными результатами
- Definition Classes
- ParIterableLike → GenTraversableLike
def segmentLength(p: (T) ⇒ Boolean, from: Int): Int
Возвращает длину самой длинной последовательности элементов, начиная с заданной позиции, удовлетворяющей заданному предикату.
Этот метод будет использовать возможности indexFlag сигнализации. Это означает, что разделители могут устанавливать и считывать состояние indexFlag.
Флаг индекса первоначально устанавливается в максимальное целочисленное значение.
- p
предикат, используемый для проверки элементов
- from
начальное смещение для поиска
- returns
длина самой длинной последовательности элементов, начинающейся с
fromи удовлетворяющей предикату
- Definition Classes
- ParSeqLike → GenSeqLike
def seq: ArraySeq[T]
- Definition Classes
- ParArray → ParSeq → ParIterable → ParIterableLike → GenSeq → GenIterable → GenTraversable → GenSeqLike → Parallelizable → GenTraversableOnce
def sequentially[S, That <: Parallel](b: (ArraySeq[T]) ⇒ Parallelizable[S, That]): ParArray[T]
- Attributes
- protected[this]
- Definition Classes
- ParIterableLike
def size: Int
Размер этого параллельного итерируемого объекта.
Примечание: не завершится для коллекций бесконечного размера.
- returns
количество элементов в этом параллельном итерируемом объекте.
- Definition Classes
- ParSeqLike → GenTraversableLike → GenTraversableOnce
def sizeHintIfCheap: Int
Размер этого набора или итератора, если он может быть вычислен дёшево
- returns
количество элементов в этом наборе или итераторе, или -1, если размер нельзя определить дёшево
- Attributes
- protected[collection]
- Definition Classes
- GenTraversableOnce
def slice(unc_from: Int, unc_until: Int): ParArray[T]
Выбирает интервал элементов. Полученный набор состоит из всех элементов x, удовлетворяющих инварианту:
from <= indexOf(x) < until
Примечание: могут быть получены разные результаты при разных запусках, если только тип базового набора не является упорядоченным.
- unc_from
наименьший индекс для включения из этого параллельного итерируемого объекта.
- unc_until
наименьший индекс для ИСКЛЮЧЕНИЯ из этого параллельного итерируемого объекта.
- returns
параллельный итерируемый объект, содержащий элементы, большие или равные индексу
from, до (но не включая) индексаuntilэтого параллельного итерируемого объекта.
- Definition Classes
- ParIterableLike → GenTraversableLike
def span(pred: (T) ⇒ Boolean): (ParArray[T], ParArray[T])
Разделяет этот параллельный итерируемый объект на пару префикс/суффикс в соответствии с предикатом.
Этот метод будет использовать indexFlag возможности сигнализации. Это означает, что разделители могут устанавливать и считывать состояние indexFlag. Флаг индекса первоначально устанавливается в максимальное целочисленное значение.
- pred
предикат, используемый для проверки элементов
- returns
пара, состоящая из самого длинного префикса коллекции, для которого все элементы удовлетворяют
pred, и остальной частью коллекции
- Definition Classes
- ParIterableLike → GenTraversableLike
def splitAt(n: Int): (ParArray[T], ParArray[T])
Разделяет этот параллельный итерируемый объект на два в заданной позиции. Примечание: c splitAt n эквивалентно (но, возможно, более эффективно, чем) (c take n, c drop n).
Примечание: могут быть получены разные результаты при разных запусках, если только тип базового набора не является упорядоченным.
- n
позиция, по которой следует разделить.
- returns
пара параллельных итерируемых объектов, состоящих из первых
nэлементов этого параллельного итерируемого объекта и других элементов.
- Definition Classes
- ParIterableLike → GenTraversableLike
def splitter: ParArrayIterator
Более усовершенствованная версия итератора, найденного в трайте ParallelIterable, этот итератор может быть разделен на произвольные подмножества итераторов.
- возвращает
итератор, который может быть разделен на подмножества точного размера
- Атрибуты
- protected[parallel]
- Определяющие классы
- ParArray → ParSeqLike → ParIterableLike
def startsWith[S](that: GenSeq[S], offset: Int): Boolean
Проверяет, содержит ли этот параллельный итерируемый объект заданную последовательность в заданном индексе.
Этот метод будет использовать возможности сигнализации abort. Это означает, что разделители могут отправлять и читать сигналы abort.
- S
тип элементов параллельной последовательности
that- that
параллельная последовательность, для которой ищется эта последовательность
- offset
начальный смещение для поиска
- возвращает
true, если есть последовательностьthat, начинающаяся вoffsetв этой последовательности,falseв противном случае
- Определяющие классы
- ParSeqLike → GenSeqLike
def startsWith[B](that: GenSeq[B]): Boolean
Проверяет, начинается ли эта общая последовательность с заданной последовательности.
- that
последовательность для проверки
- возвращает
true, если эта коллекция имеетthatв качестве префикса,falseв противном случае.
- Определяющие классы
- GenSeqLike
def stringPrefix: String
Определяет префикс представления этого объекта toString.
- возвращает
строковое представление, которое начинается с результата
toString, примененного к этому параллельному итерируемому объекту. По умолчанию строковый префикс - это простое имя класса коллекции параллельного итерируемого объекта.
- Определяющие классы
- ParSeq → ParIterable → GenTraversableLike
def sum: A
Суммирует элементы этой коллекции.
- возвращает
сумму всех элементов в этом параллельном массиве чисел типа
Int. ВместоInt, любой другой типTс неявнымNumeric[T]может использоваться в качестве типа элементов параллельного массива и типа результатаsum. Примеры таких типов:Long,Float,Double,BigInt.
- Определяющие классы
- ParIterableLike → GenTraversableOnce
final def synchronized[T0](arg0: ⇒ T0): T0
- Определяющие классы
- AnyRef
def tail: ParArray[T]
Выбирает все элементы, кроме первого.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен.
- возвращает
параллельный итерируемый объект, состоящий из всех элементов этого параллельного итерируемого объекта, кроме первого.
- Определяющие классы
- ParIterableLike → GenTraversableLike
- Исключения
UnsupportedOperationException, если параллельный итерируемый объект пуст.
def take(n: Int): ParArray[T]
Выбирает первые n элементов.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен.
- n
количество элементов для выбора из этого параллельного итерируемого объекта.
- возвращает
параллельный итерируемый объект, содержащий только первые
nэлементов этого параллельного итерируемого объекта, или же весь параллельный итерируемый объект, если в нем меньше, чемnэлементов. Еслиnотрицательно, возвращает пустой параллельный итерируемый объект.
- Определяющие классы
- ParIterableLike → GenTraversableLike
def takeWhile(pred: (T) ⇒ Boolean): ParArray[T]
Берет самую длинную префиксную последовательность элементов, удовлетворяющих предикату.
Этот метод будет использовать возможности сигнализации indexFlag. Это означает, что разделители могут устанавливать и читать состояние indexFlag. Флаг индекса изначально устанавливается в максимальное целочисленное значение.
- pred
предикат для проверки элементов
- возвращает
самый длинный префикс этого параллельного итерируемого объекта элементов, удовлетворяющих предикату
pred
- Определяющие классы
- ParIterableLike → GenTraversableLike
неявный def task2ops[R, Tp](tsk: SSCTask[R, Tp]): TaskOps[R, Tp]
- Атрибуты
- protected
- Определяющие классы
- ParIterableLike
def tasksupport: TaskSupport
Объект поддержки задач, отвечающий за планирование и балансировку нагрузки задач на процессоры.
- Определяющие классы
- ParIterableLike
- См. также
def tasksupport_=(ts: TaskSupport): Unit
Изменяет объект поддержки задач, отвечающий за планирование и балансировку задач на процессоры.
Объект поддержки задач можно изменить в параллельной коллекции после её создания, но только в период ожидания, т.е. пока нет одновременных вызовов методов параллельной коллекции.
Вот способ изменения поддержки задач параллельной коллекции:
import scala.collection.parallel._ val pc = mutable.ParArray(1, 2, 3) pc.tasksupport = new ForkJoinTaskSupport( new java.util.concurrent.ForkJoinPool(2))
- Определяющие классы
- ParIterableLike
- См. также
def to[Col[_]]: Col[A]
Преобразует этот параллельный массив в другой, копируя все элементы.
Примечание: не завершит работу для коллекций бесконечной длины.
- Col
Тип коллекции для построения.
- возвращает
новую коллекцию, содержащую все элементы этого параллельного массива.
- Определяющие классы
- ParIterableLike → GenTraversableOnce
def toArray: Array[A]
Преобразует этот параллельный массив в массив.
Примечание: не завершит работу для коллекций бесконечной длины.
- возвращает
массив, содержащий все элементы этого параллельного массива. Для типа элемента этого параллельного массива должна быть доступна
ClassTag.
- Определяющие классы
- ParIterableLike → GenTraversableOnce
def toBuffer[U >: T]: Buffer[U]
Использует содержимое этой параллельной итерируемой коллекции для создания нового изменяемого буфера.
Примечание: не завершит работу для коллекций бесконечной длины.
- возвращает
буфер, содержащий все элементы этой параллельной итерируемой коллекции.
- Определяющие классы
- ParIterableLike → GenTraversableOnce
def toIndexedSeq: immutable.IndexedSeq[T]
Преобразует эту параллельную итерируемую коллекцию в индексированную последовательность.
Примечание: не завершит работу для коллекций бесконечной длины.
- возвращает
индексированная последовательность, содержащая все элементы этой параллельной итерируемой коллекции.
- Определяющие классы
- ParIterableLike → GenTraversableOnce
def toIterable: ParIterable[T]
Преобразует эту параллельную итерируемую коллекцию в итерируемую коллекцию. Обратите внимание, что выбор целевого Iterable ленивый в этой реализации по умолчанию, так как этот TraversableOnce может быть ленивым и неопределённым (т.е. это может быть итератор, который можно пройти только один раз).
Примечание: не завершит работу для коллекций бесконечной длины.
- возвращает
Iterable, содержащий все элементы этой параллельной итерируемой коллекции.
- Определяющие классы
- ParIterable → ParIterableLike → GenTraversableOnce
def toIterator: scala.Iterator[T]
Возвращает итератор по элементам в этой параллельной итерируемой коллекции. Вернёт тот же итератор, если этот экземпляр уже является итератором.
Примечание: не завершит работу для коллекций бесконечной длины.
- возвращает
итератор, содержащий все элементы этой параллельной итерируемой коллекции.
- Определяющие классы
- ParIterableLike → GenTraversableOnce
def toList: List[T]
Преобразует эту параллельную итерируемую коллекцию в список.
Примечание: не завершит работу для коллекций бесконечной длины.
- возвращает
список, содержащий все элементы этой параллельной итерируемой коллекции.
- Определяющие классы
- ParIterableLike → GenTraversableOnce
def toMap[T, U]: collection.Map[T, U]
Преобразует этот параллельный массив в карту. Этот метод недоступен, если элементы не являются членами Tuple2, при этом каждый ((T, U)) становится парой ключ-значение в карте. Дублирующие ключи будут перезаписаны последующими ключами: если это неупорядоченная коллекция, то порядок ключей в результирующей карте не определен.
Примечание: не завершится для коллекций бесконечного размера.
- returns
карта типа
immutable.Map[T, U], содержащая все пары ключ/значение типа(T, U)этого параллельного массива.
- Definition Classes
- ParIterableLike → GenTraversableOnce
def toParArray: ParArray[T]
- Implicit
- Этот член добавлен с помощью неявного преобразования из ParArray[T] в CollectionsHaveToParArray[ParArray[T], T] с помощью метода CollectionsHaveToParArray в scala.collection.parallel. Это преобразование будет выполнено только в том случае, если в области видимости находится неявное значение типа (ParArray[T]) ⇒ GenTraversableOnce[T].
- Definition Classes
- CollectionsHaveToParArray
def toParCollection[U >: T, That](cbf: () ⇒ Combiner[U, That]): That
- Attributes
- protected
- Definition Classes
- ParIterableLike
def toParMap[K, V, That](cbf: () ⇒ Combiner[(K, V), That])(implicit ev: <:<[T, (K, V)]): That
- Attributes
- protected
- Definition Classes
- ParIterableLike
def toSeq: ParSeq[T]
Преобразует эту изменяемую параллельную последовательность в последовательность. Как и toIterable, она ленивая в этой реализации по умолчанию, так как эта TraversableOnce может быть ленивой и невычисленной.
Примечание: не завершится для коллекций бесконечного размера.
- returns
последовательность, содержащую все элементы этого изменяемого параллельного последовательности.
- Definition Classes
- ParSeq → ParSeqLike → ParIterable → ParIterableLike → GenSeqLike → GenTraversableOnce
def toSet[U >: T]: immutable.ParSet[U]
Преобразует это параллельное множество в множество.
Примечание: не завершится для коллекций бесконечного размера.
- returns
множество, содержащее все элементы этого параллельного множества.
- Definition Classes
- ParIterableLike → GenTraversableOnce
def toStream: Stream[T]
Преобразует это параллельное множество в поток.
- returns
поток, содержащий все элементы этого параллельного множества.
- Definition Classes
- ParIterableLike → GenTraversableOnce
def toString(): String
Создаёт строковое представление этого объекта. По умолчанию представление зависит от платформы. На платформе Java это конкатенация имени класса, «@» и хэш-кода объекта в шестнадцатеричном формате.
- returns
строковое представление объекта.
- Definition Classes
- ParSeq → ParSeqLike → ParIterableLike → AnyRef → Any
def toTraversable: GenTraversable[T]
Преобразует этот параллельный итерируемый объект в неопределённый Traversable. Возвратит тот же коллекцию, если этот экземпляр уже Traversable.
Примечание: не будет завершаться для коллекций бесконечного размера.
- возвращает
Traversable, содержащий все элементы этого параллельного итерируемого объекта.
- Определяющие классы
- ParIterableLike → GenTraversableOnce
def toVector: Vector[T]
Преобразует этот параллельный итерируемый объект в Vector.
Примечание: не будет завершаться для коллекций бесконечного размера.
- возвращает
вектор, содержащий все элементы этого параллельного итерируемого объекта.
- Определяющие классы
- ParIterableLike → GenTraversableOnce
def transpose[B](implicit asTraversable: (T) ⇒ GenTraversableOnce[B]): ParArray[ParArray[B]]
Транспонирует этот коллекцию итерируемых коллекций в коллекцию коллекций.
Тип результирующей коллекции будет определяться статическим типом коллекции. Например:
val xs = List(
Set(1, 2, 3),
Set(4, 5, 6)).transpose
// xs == List(
// List(1, 4),
// List(2, 5),
// List(3, 6))
val ys = Vector(
List(1, 2, 3),
List(4, 5, 6)).transpose
// ys == Vector(
// Vector(1, 4),
// Vector(2, 5),
// Vector(3, 6))
- B
тип элементов каждой итерируемой коллекции.
- asTraversable
явное преобразование, которое утверждает, что тип элемента этого коллекция является
Traversable.- возвращает
двухмерная коллекция коллекций, у которой n-я строка — это n-й столбец этой коллекции.
- Определяющие классы
- GenericTraversableTemplate
- Аннотации
- @migration
- Миграция
(Изменено в версии 2.9.0)
transposeвыбрасываетIllegalArgumentException, если коллекции не имеют одинаковый размер.- Исключения
IllegalArgumentException, если все коллекции в этой коллекции не имеют одинаковый размер.
def union(that: GenSeq[T]): ParArray[T]
Создаёт новую последовательность, которая содержит все элементы этого параллельного массива, а также все элементы заданной последовательности. xs union ys эквивалентно xs ++ ys.
Другой способ выразить это — xs union ys вычисляет сохраняющую порядок много-множественную сумму xs и ys. union, следовательно, является аналогом diff и intersect, которые также работают с много-множествами.
Примечание: не будет завершаться для коллекций бесконечного размера.
- that
последовательность для добавления.
- возвращает
новый параллельный массив, который содержит все элементы этого параллельного массива, за которыми следуют все элементы
that.
- Определяющие классы
- GenSeqLike
def unzip[A1, A2](implicit asPair: (T) ⇒ (A1, A2)): (ParArray[A1], ParArray[A2])
Преобразует этот коллекцию пар в две коллекции первой и второй половины каждой пары.
val xs = Traversable(
(1, "one"),
(2, "two"),
(3, "three")).unzip
// xs == (Traversable(1, 2, 3),
// Traversable(one, two, three))
- A1
тип первой половины пар элементов
- A2
тип второй половины пар элементов
- asPair
явное преобразование, которое утверждает, что тип элемента этой коллекции является парой.
- возвращает
пара коллекций, содержащая первую и вторую половины каждой пары элементов этой коллекции.
- Определяющие классы
- GenericTraversableTemplate
def unzip3[A1, A2, A3](implicit asTriple: (T) ⇒ (A1, A2, A3)): (ParArray[A1], ParArray[A2], ParArray[A3])
Преобразует этот коллекцию троек в три коллекции первого, второго и третьего элемента каждой тройки.
val xs = Traversable(
(1, "one", '1'),
(2, "two", '2'),
(3, "three", '3')).unzip3
// xs == (Traversable(1, 2, 3),
// Traversable(one, two, three),
// Traversable(1, 2, 3))
- A1
тип первого члена троек элементов
- A2
тип второго члена троек элементов
- A3
тип третьего члена троек элементов
- asTriple
явное преобразование, которое утверждает, что тип элемента этой коллекции является тройкой.
- возвращает
тройка коллекций, содержащая первый, второй и соответственно третий член каждой тройки элементов этой коллекции.
- Определяющие классы
- GenericTraversableTemplate
def update(i: Int, elem: T): Unit
def updated(index: Int, elem: A): ParArray[A]
Копия этого параллельного массива с заменой одного элемента.
- index
позиция замены
- elem
элемент замены
- returns
копия этого параллельного массива с элементом в позиции
index, замененным наelem.
- Definition Classes
- ParSeqLike → GenSeqLike
final def wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
final def wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
final def wait(arg0: Long): Unit
def withFilter(pred: (T) ⇒ Boolean): ParArray[T]
- Definition Classes
- ParIterableLike
def wrap[R](body: ⇒ R): NonDivisible[R]
- Attributes
- protected
- Definition Classes
- ParIterableLike
def zip[B](that: GenIterable[B]): ParArray[(A, B)]
Возвращает параллельный массив, образованный из этого параллельного массива и другой коллекции итерируемых элементов, объединяя соответствующие элементы в пары. Если одна из двух коллекций длиннее другой, оставшиеся элементы игнорируются.
Примечание: могут быть получены разные результаты для разных запусков, если тип коллекции-основы не является упорядоченным.
- B
тип второй половины возвращаемых пар
- that
Итерируемая коллекция, предоставляющая вторую половину каждой пары результата
- returns
новый параллельный массив, содержащий пары, состоящие из соответствующих элементов этого параллельного массива и
that. Длина возвращаемой коллекции — минимальная из длин этого параллельного массива иthat.
- Definition Classes
- ParSeqLike → ParIterableLike → GenIterableLike
def zipAll[B](that: Iterable[B], thisElem: A, thatElem: B): ParArray[(A, B)]
Возвращает параллельный массив, образованный из этого параллельного массива и другой итерируемой коллекции, объединяя соответствующие элементы в пары. Если одна из двух коллекций короче другой, для расширения короче коллекции до длины длиннее используются плацехолдеры.
Примечание: могут быть получены разные результаты для разных запусков, если тип коллекции-основы не является упорядоченным.
- B
тип второй половины возвращаемых пар
- that
Итерируемая коллекция, предоставляющая вторую половину каждой пары результата
- thisElem
элемент, используемый для заполнения результата, если этот параллельный массив короче
that.- thatElem
элемент, используемый для заполнения результата, если
thatкороче, чем этот параллельный массив.- returns
новый параллельный массив, содержащий пары, состоящие из соответствующих элементов этого параллельного массива и
that. Длина возвращаемой коллекции — максимальная из длин этого параллельного массива иthat. Если этот параллельный массив корочеthat,thisElemзначения используются для заполнения результата. Еслиthatкороче, чем этот параллельный массив,thatElemзначения используются для заполнения результата.
- Definition Classes
- ParIterableLike → GenIterableLike
def zipWithIndex: ParArray[(A, Int)]
Сцепляет этот параллельный массив со своими индексами.
Примечание: может возвращать разные результаты при разных запусках, если тип базовой коллекции не упорядочен.
- returns
Новый параллельный массив, содержащий пары, состоящие из всех элементов этого параллельного массива, сопоставленных с их индексом. Индексы начинаются с
0.
- Definition Classes
- ParIterableLike → GenIterableLike
List("a", "b", "c").zipWithIndex = List(("a", 0), ("b", 1), ("c", 2))
def →[B](y: B): (ParArray[T], B)
- Implicit
- Этот член добавлен неявным преобразованием из ParArray[T] в ArrowAssoc[ParArray[T]], выполненное методом ArrowAssoc в scala.Predef.
- Definition Classes
- ArrowAssoc
© 2002-2019 EPFL, with contributions from Lightbend.
Licensed under the Apache License, Version 2.0.
https://www.scala-lang.org/api/2.12.9/scala/collection/parallel/mutable/ParArray.html
Паралледная последовательность, хранящая элементы в линейном массиве.
ParArray— это параллельная последовательность с предопределённым размером. Размер массива не может быть изменён после его создания.ParArrayвнутренне хранит массив, содержащий элементы. Это означает, что операции по объёму, основанные на обходе, обеспечивают быстрый доступ к элементам.ParArrayиспользует ленивые билдеры, которые создают внутренний массив данных только после того, как размер массива известен. Тем временем они сохраняют фрагментированный результат. Фрагменты копируются в результирующий массив данных параллельно с использованием быстрых операций копирования массивов, как только все комбинирующие элементы заполнены параллельно.тип элементов в массиве
2.9
Обзор библиотеки параллельных коллекций Scala раздел по
ParArrayдля получения дополнительной информации.