我正在生产项目,从多个协同例程中消费并推回resultChannel。Producer在最后一项之后关闭其channel。代码永远不会结束,因为resultChannel永远不会被关闭。如何检测并正确完成迭代使hasNext()返回false?valinputData=(0..99).map{"Input$it"}valthreads=10valbundleProducer=produce(CommonPool,threads){inputData.forEach{item->send(item)println("Producing:$item")}println("Producing
我正在生产项目,从多个协同例程中消费并推回resultChannel。Producer在最后一项之后关闭其channel。代码永远不会结束,因为resultChannel永远不会被关闭。如何检测并正确完成迭代使hasNext()返回false?valinputData=(0..99).map{"Input$it"}valthreads=10valbundleProducer=produce(CommonPool,threads){inputData.forEach{item->send(item)println("Producing:$item")}println("Producing