| SourceOperationsInterleaveMaterializedT1, T2, TMat, TMat2, TMat3 Method |
Interleave is a deterministic merge of the given
SourceTOut, TMat with elements of this
IFlowTOut, TMat.
It first emits
segmentSize number of elements from this flow to downstream, then - same amount for
graph source,
then repeat process.
After one of upstreams is complete than all the rest elements will be emitted from the second one
If it gets error from one of upstreams - stream completes with failure.
@see
InterleaveTIn, TOut.
It is recommended to use the internally optimized
LeftTLeft, TRight(TLeft, TRight) and
RightTLeft, TRight(TLeft, TRight) combiners
where appropriate instead of manually writing functions that pass through one of the values.
Namespace:
Akka.Streams.Dsl
Assembly:
Akka.Streams (in Akka.Streams.dll) Version: 1.2.3.129 (1.2.3.129)
Syntax public static Source<T2, TMat3> InterleaveMaterialized<T1, T2, TMat, TMat2, TMat3>(
this Source<T1, TMat> flow,
IGraph<SourceShape<T2>, TMat2> graph,
int segmentSize,
Func<TMat, TMat2, TMat3> combine
)
where T1 : T2
[<ExtensionAttribute>]
static member InterleaveMaterialized :
flow : Source<'T1, 'TMat> *
graph : IGraph<SourceShape<'T2>, 'TMat2> *
segmentSize : int *
combine : Func<'TMat, 'TMat2, 'TMat3> -> Source<'T2, 'TMat3> when 'T1 : 'T2
Parameters
- flow
- Type: Akka.Streams.DslSourceT1, TMat
TBD - graph
- Type: Akka.StreamsIGraphSourceShapeT2, TMat2
TBD - segmentSize
- Type: SystemInt32
TBD - combine
- Type: SystemFuncTMat, TMat2, TMat3
TBD
Type Parameters
- T1
- TBD
- T2
- TBD
- TMat
- TBD
- TMat2
- TBD
- TMat3
- TBD
Return Value
Type:
SourceT2,
TMat3TBD
Usage Note
In Visual Basic and C#, you can call this method as an instance method on any object of type
SourceT1,
TMat. When you use instance method syntax to call this method, omit the first parameter. For more information, see
Extension Methods (Visual Basic) or
Extension Methods (C# Programming Guide).
See Also