If a call to Pipe.sink.close() is invoked concurrently while Pipe.fold() is running, it can be missed by the folding thread, leaving the fold destination open, even though it should be closed. Depending on how the sink is used, this can lead to deadlock or slowness and timeout failures.
If a call to
Pipe.sink.close()
is invoked concurrently whilePipe.fold()
is running, it can be missed by the folding thread, leaving the fold destination open, even though it should be closed. Depending on how the sink is used, this can lead to deadlock or slowness and timeout failures.