BoundedQueueSource API
This commit is contained in:
parent
708f8b870c
commit
779161d556
11 changed files with 358 additions and 115 deletions
|
|
@ -491,6 +491,36 @@ class IntegrationDocSpec extends AkkaSpec(IntegrationDocSpec.config) {
|
|||
//#source-queue
|
||||
}
|
||||
|
||||
"illustrate use of synchronous source queue" in {
|
||||
//#source-queue-synchronous
|
||||
val bufferSize = 1000
|
||||
|
||||
//#source-queue-synchronous
|
||||
// format: OFF
|
||||
//#source-queue-synchronous
|
||||
val queue = Source
|
||||
.queue[Int](bufferSize)
|
||||
.map(x => x * x)
|
||||
.toMat(Sink.foreach(x => println(s"completed $x")))(Keep.left)
|
||||
.run()
|
||||
//#source-queue-synchronous
|
||||
// format: OFF
|
||||
//#source-queue-synchronous
|
||||
|
||||
val fastElements = 1 to 10
|
||||
|
||||
implicit val ec = system.dispatcher
|
||||
fastElements.foreach { x =>
|
||||
queue.offer(x) match {
|
||||
case QueueOfferResult.Enqueued => println(s"enqueued $x")
|
||||
case QueueOfferResult.Dropped => println(s"dropped $x")
|
||||
case QueueOfferResult.Failure(ex) => println(s"Offer failed ${ex.getMessage}")
|
||||
case QueueOfferResult.QueueClosed => println("Source Queue closed")
|
||||
}
|
||||
}
|
||||
//#source-queue-synchronous
|
||||
}
|
||||
|
||||
"illustrate use of source actor ref" in {
|
||||
//#source-actorRef
|
||||
val bufferSize = 10
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue