Reading input from piped stdin.

Steven Schveighoffer schveiguy at yahoo.com
Fri Feb 14 11:24:57 PST 2014


On Fri, 14 Feb 2014 14:16:23 -0500, Thomas <sitronvask at gmail.com> wrote:

> On Friday, 14 February 2014 at 19:08:20 UTC, Adam D. Ruppe wrote:
>> Just a quick look, but I betcha it has to do with buffering. After  
>> writing the line to the pipe, call the flush() method on the output  
>> pipe and see what happens there.
>>
>> (Pipes buffer differently than regular output so this is a common  
>> mixup, especially with IDEs which communicate with stdout via pipes  
>> normally!)
>>
>> let me know if it works
>
> Impressive reply speed! :)
>
> However calling pipes.stdin.flush() immediately after writeln did
> not seem to work.

You must also flush from the child process -- it too is connected to a  
pipe and not a console.

-Steve


More information about the Digitalmars-d-learn mailing list