Spec-Zone.ru › Scala 2.12 Library

Класс 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 — это параллельная последовательность с предопределённым размером. Размер массива не может быть изменён после его создания.

ParArray внутренне хранит массив, содержащий элементы. Это означает, что операции по объёму, основанные на обходе, обеспечивают быстрый доступ к элементам. ParArray использует ленивые билдеры, которые создают внутренний массив данных только после того, как размер массива известен. Тем временем они сохраняют фрагментированный результат. Фрагменты копируются в результирующий массив данных параллельно с использованием быстрых операций копирования массивов, как только все комбинирующие элементы заполнены параллельно.

T

тип элементов в массиве

Self Type
ParArray[T]
Аннотации
@SerialVersionUID()
Источник
ParArray.scala
С

2.9

См. также

Обзор библиотеки параллельных коллекций Scala раздел по ParArray для получения дополнительной информации.

Линейные супертипы

Конструкторы экземпляров

новый 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]

[use case]

Копия параллельного массива с добавленным элементом в начало.

Обратите внимание, что операторы с окончанием «-» являются правоассоциативными (см. пример). Мнемоника для +: по сравнению с :+: двоеточие ставится со стороны коллекции.

Также исходный параллельный массив не изменяется, поэтому вам нужно сохранить результат.

Пример:

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]

[use case]

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
Full Signature

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 op between consecutive elements of this parallel iterable, going right to left with the start value z on the right:

op(x_1, op(x_2, ... op(x_n, z)...))

where x1, ..., xn are 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

true if the receiver object is equivalent to the argument; false otherwise.

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 seqop operator (e.g. Nil for list concatenation or 0 for 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, where 0 indicates the first element.

Definition Classes
ParArray → ParSeq → GenSeqLike
Exceptions thrown

IndexOutOfBoundsException if idx does not satisfy 0 <= 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

ClassCastException if the receiver object is not an instance of the erasure of type T0.

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 зависит от платформы.

возвращает

копию объекта-получателя.

Attributes
protected[lang]
Definition Classes
AnyRef
Annotations
@throws( ... ) @native()
Примечание

не указано SLS в качестве члена AnyRef

def collect[B](pf: PartialFunction[A, B]): ParArray[B]

[use case]

Строит новую коллекцию, применяя частичную функцию ко всем элементам этого параллельного массива, для которых функция определена.

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

[use case]

Копирует элементы этого параллельного массива в массив. Заполняет заданный массив xs не более чем len элементами этого параллельного массива, начиная с позиции start. Копирование остановится, как только будет достигнут конец текущего параллельного массива, или конец целевого массива, или len элементов будут скопированы.

Примечание: не завершится для коллекций бесконечного размера.

xs

массив для заполнения.

start

начальный индекс.

len

максимальное количество элементов для копирования.

Definition Classes
ParIterableLike → GenTraversableOnce
Полная сигнатура

def copyToArray(xs: Array[A], start: Int): Unit

[use case]

Копирует элементы этого параллельного массива в массив. Заполняет заданный массив xs значениями этого параллельного массива, начиная с индекса start. Копирование остановится, как только будет достигнут конец текущего параллельного массива или конец целевого массива.

Примечание: не завершится для коллекций бесконечного размера.

xs

массив для заполнения.

start

начальный индекс.

Definition Classes
ParIterableLike → GenTraversableOnce
Полная сигнатура

def copyToArray(xs: Array[A]): Unit

[use case]

Копирует элементы этого параллельного массива в массив. Заполняет заданный массив 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]

[use case]

Вычисляет разность мультимножеств между этим параллельным массивом и другой последовательностью.

Примечание: не завершится для коллекций бесконечного размера.

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]

[use case]

Создаёт новую коллекцию, применяя функцию ко всем элементам этого параллельного массива и используя элементы получившихся коллекций.

Например:

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]

[use case]

Преобразует этот параллельный массив коллекций итерируемых объектов в параллельный массив, образованный элементами этих коллекций.

Тип результирующей коллекции определяется статическим типом параллельного массива. Например:

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-типу получателя.

Определяющие классы
AnyRef → Any
Аннотации
@native()

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

[use case]

Находит индекс последнего вхождения некоторого значения в этом параллельном массиве до или на заданном индексе конца.

elem

значение элемента, для которого требуется выполнить поиск.

end

индекс конца.

returns

индекс <= end последнего элемента этого параллельного массива, равного (как определено ==) elem, или -1, если такой элемент не найден.

Definition Classes
GenSeqLike
Полная сигнатура

def lastIndexOf(elem: T): Int

[use case]

Находит индекс последнего вхождения некоторого значения в этом параллельном массиве.

Примечание: не завершится для коллекций бесконечного размера.

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]

[use case]

Создаёт новую коллекцию, применяя функцию ко всем элементам этого параллельного массива.

B

тип элементов возвращаемой коллекции.

f

функция для применения к каждому элементу.

returns

новый параллельный массив, полученный путём применения заданной функции f к каждому элементу этого параллельного массива и сбора результатов.

Definition Classes
ParArray → ParIterableLike → GenTraversableLike
Полная подпись

def max: A

[use case]

Находит наибольший элемент.

returns

наибольший элемент этого параллельного массива.

Definition Classes
ParIterableLike → GenTraversableOnce
Полная подпись
Exceptions thrown

UnsupportedOperationException, если этот параллельный массив пуст.

def maxBy[B](f: (A) ⇒ B): A

[use case]

Находит первый элемент, который даёт наибольшее значение, измеренное функцией f.

B

Тип результата функции f.

f

Функция измерения.

returns

первый элемент этого параллельного массива с наибольшим значением, измеренным функцией f.

Definition Classes
ParIterableLike → GenTraversableOnce
Полная подпись
Exceptions thrown

UnsupportedOperationException если этот параллельный массив пуст.

def min: A

[use case]

Находит наименьший элемент.

returns

наименьший элемент этого параллельного массива.

Definition Classes
ParIterableLike → GenTraversableOnce
Полная подпись
Exceptions thrown

UnsupportedOperationException, если этот параллельный массив пуст.

def minBy[B](f: (A) ⇒ B): A

[use case]

Находит первый элемент, который даёт наименьшее значение, измеренное функцией 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]

[use case]

Копия этого параллельного массива с добавленными элементами значения до достижения заданной целевой длины.

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]

[use case]

Создаёт новый параллельный массив, где фрагмент элементов в этом параллельном массиве заменяется другой последовательностью.

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

[use case]

Перемножает элементы этой коллекции.

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]

[use case]

Создаёт новую коллекцию, применяя функцию ко всем элементам этого параллельного массива и собирая результаты в обратном порядке.

Примечание: не завершится для коллекций бесконечного размера.

Примечание: xs.reverseMap(f) эквивалентно xs.reverse.map(f), но может быть более эффективным.

B

тип элементов возвращаемой коллекции.

f

функция, применяемая к каждому элементу.

returns

новый параллельный массив, полученный путём применения данной функции f к каждому элементу этого параллельного массива и сбора результатов в обратном порядке.

Definition Classes
ParSeqLike → GenSeqLike
Полная сигнатура

def sameElements(that: GenIterable[A]): Boolean

[use case]

Проверяет, содержит ли другая итерируемая коллекция те же элементы в том же порядке, что и этот параллельный массив.

Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен.

Примечание: не завершится для коллекций бесконечного размера.

that

коллекция для сравнения.

returns

true, если обе коллекции содержат одинаковые элементы в том же порядке, false в противном случае.

Definition Classes
ParSeqLike → ParIterableLike → GenIterableLike
Полная сигнатура

def scan(z: T)(op: (T, T) ⇒ T): ParArray[T]

[use case]

Вычисляет префиксный скан элементов коллекции.

Примечание: нейтральный элемент 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

[use case]

Суммирует элементы этой коллекции.

возвращает

сумму всех элементов в этом параллельном массиве чисел типа 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
См. также

scala.collection.parallel.TaskSupport

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
См. также

scala.collection.parallel.TaskSupport

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]

[use case]

Преобразует этот параллельный массив в карту. Этот метод недоступен, если элементы не являются членами Tuple2, при этом каждый ((T, U)) становится парой ключ-значение в карте. Дублирующие ключи будут перезаписаны последующими ключами: если это неупорядоченная коллекция, то порядок ключей в результирующей карте не определен.

Примечание: не завершится для коллекций бесконечного размера.

returns

карта типа immutable.Map[T, U], содержащая все пары ключ/значение типа (T, U) этого параллельного массива.

Definition Classes
ParIterableLike → GenTraversableOnce
Full Signature

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]

[use case]

Создаёт новую последовательность, которая содержит все элементы этого параллельного массива, а также все элементы заданной последовательности. 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

Определяющие классы
ParArray → ParSeq

def updated(index: Int, elem: A): ParArray[A]

[use case]

Копия этого параллельного массива с заменой одного элемента.

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

Definition Classes
AnyRef
Annotations
@throws( ... ) @native()

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)]

[use case]

Возвращает параллельный массив, образованный из этого параллельного массива и другой коллекции итерируемых элементов, объединяя соответствующие элементы в пары. Если одна из двух коллекций длиннее другой, оставшиеся элементы игнорируются.

Примечание: могут быть получены разные результаты для разных запусков, если тип коллекции-основы не является упорядоченным.

B

тип второй половины возвращаемых пар

that

Итерируемая коллекция, предоставляющая вторую половину каждой пары результата

returns

новый параллельный массив, содержащий пары, состоящие из соответствующих элементов этого параллельного массива и that. Длина возвращаемой коллекции — минимальная из длин этого параллельного массива и that.

Definition Classes
ParSeqLike → ParIterableLike → GenIterableLike
Полная сигнатура

def zipAll[B](that: Iterable[B], thisElem: A, thatElem: B): ParArray[(A, B)]

[use case]

Возвращает параллельный массив, образованный из этого параллельного массива и другой итерируемой коллекции, объединяя соответствующие элементы в пары. Если одна из двух коллекций короче другой, для расширения короче коллекции до длины длиннее используются плацехолдеры.

Примечание: могут быть получены разные результаты для разных запусков, если тип коллекции-основы не является упорядоченным.

B

тип второй половины возвращаемых пар

that

Итерируемая коллекция, предоставляющая вторую половину каждой пары результата

thisElem

элемент, используемый для заполнения результата, если этот параллельный массив короче that.

thatElem

элемент, используемый для заполнения результата, если that короче, чем этот параллельный массив.

returns

новый параллельный массив, содержащий пары, состоящие из соответствующих элементов этого параллельного массива и that. Длина возвращаемой коллекции — максимальная из длин этого параллельного массива и that. Если этот параллельный массив короче that, thisElem значения используются для заполнения результата. Если that короче, чем этот параллельный массив, thatElem значения используются для заполнения результата.

Definition Classes
ParIterableLike → GenIterableLike
Полная сигнатура

def zipWithIndex: ParArray[(A, Int)]

[use case]

Сцепляет этот параллельный массив со своими индексами.

Примечание: может возвращать разные результаты при разных запусках, если тип базовой коллекции не упорядочен.

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

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API