in reply to sysread/syswrite wrappers
why nobody wrote CPAN module with such wrappers?
My take on is that sysread is usually only used for non-blocking reads; and then usually in code dealing with multiple input streams.
In this usual case, you definitely don't want to block waiting for the rest of the expected input from any given stream, because it might be a long time coming; or indeed, never come.
Rather you want the read to return ASAP -- partial or not -- so that you can utilise any time that your wrapper would spend 'blocking' on one stream, checking other streams for input.
You say you are using sysread because you are using select; and presumably you are using select because you want to be doing other things whilst waiting for data to become available. What are those other things?
And what is that makes it important to be doing them, whilst waiting for data to start to arrive, not so important that you can hold off doing them indefinitely, if the pipe only gives you part of what you are expecting and never completes?
|Replies are listed 'Best First'.|
Re^2: sysread/syswrite wrappers
by vsespb (Chaplain) on Oct 12, 2016 at 13:41 UTC