Есть ли (простой) способ получить поток преобразования из дочернего процесса, который был выполнен через spawn
, где стороны Readable
/ Writable
будут соответствовать stdin
/ stdout
дочернего процесса процесс? Например, это позволило бы мне сделать что-то вроде этого
stream.pipeline(
createReadable(),
childProcessToTransformStream(child),
createWritable(),
callback
);
Мое текущее решение - stream.pipeline
дважды: один экземпляр для канала createReadable()
до child.stdin
и второй экземпляр для канала child.stdout
до createWritable()
. Но мне не нравится это решение, потому что оно плохо составляется: если бы была функция, подобная гипотетической childProcessToTransformStream
выше, было бы возможно создать более сложные конвейеры, такие как:
stream.pipeline(
createReadable(),
childProcessToTransformStream(child1),
childProcessToTransformStream(child2),
createWritable(),
callback
);