|
hi Lim,
Not in all cases.
QtmhWrStout always writes to stdout. write(1: ....) always writes to
descriptor 1. But they aren't always the same thing.
If I understand correctly, the original implementation of C on OS/400
didn't have descriptors. So stdin, stdout, stderr were not associated
with a particular file descriptor.fact
Later, when descriptor support was added, IBM had to deal with the
that some people expected 0,1,2 to be mapped to stdin,stdout,stderrwith
(because that's how Unix works). So they invented an environment
variable, QIBM_USE_DESCRIPTOR_STDIO that controls this.
Furthermore, 0,1,2 always match stdin, stdout, stderr when you are in
QShell or PASE. I believe they also do when you are communicating
the HTTP server (i.e. CGI programming)
But there are situations where they don't match, such as in the native
ILE environment (interactive or batch job) or when spawning a childjob
manually via the spawn() API and mapping pipes to descriptors 0,1,2,or
when starting Java directly from RPG. In those cases, you have to set
the QIBM_USE_DESCRIPTOR_STDIO variable...and
hockchai Lim wrote:
is it correct for me to assume that write() (using handle ID of 1)
stdout?QtmhWrStout essentially does the same thing of writing the data to
thanks
As an Amazon Associate we earn from qualifying purchases.
This mailing list archive is Copyright 1997-2024 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available on our policy page. If you have questions about this, please contact [javascript protected email address].
Operating expenses for this site are earned using the Amazon Associate program and Google Adsense.