elizarov
11/29/2017, 10:55 AMval reqs: List<Request> = ... // list of original requests
val chan = Channel<Request>()
launch { for (req in reqs) chan.send(req) } // send all reqs to chan
repeat(n) { // craete a pool of limited number workers
launch { for (req in chan) processRequest(req) }
}
gildor
11/30/2017, 12:56 AMproduce
instead of channel + launch in this case:
val reqs: List<Request> = ... // list of original
val chan = produce {
for (req in reqs) send(req)
}
repeat(n) { // craete a pool of limited number workers
launch { for (req in chan) processRequest(req) }
}
Any drawbacks?elizarov
11/30/2017, 7:05 AMproduce
for it is a great idea 👍