> >   reason:  could not make stderr pipes: Bad file number at Procs.pm line 544
> > 
> >   Of course the error message doesn't tell me what happened, it could have
> > been anything.  The line of code is a simple Wheel::Run->New().

> POE::Wheel::Run is a weak spot in error checking and reporting.  Part
> of it is the difficulty of creating a new process-- building pipes and
> things we've already established can be hard.  Part of it is the
> difficulty in passing child-process errors back to the parent for
> reporting in the main program.

Maybe there is a need for a lowest common denominator only version of
Pipe or Wheel::Run?  One that only uses Socket::INET perhaps?  Heck,
develop it on Windows so that we know we're dealing with the LCD.  That
way, it can be portable, consistent, and stable, although possibly a lot
slower.  Once that is stable, we can write separate modules that
overload the base class for performance, if requested.  That reminds me,
isn't some of this kind of thing being done in the core of POE anyways? 
There's a perl version, but for raw speed there's an XS version?

use POE qw( POE::Pipe );
new POE::Pipe::TwoWay( optimize => 1 );

In most cases, I would much prefer a stable & consistent implementation
over a fast one.  I'll take a poke at it sometime after LinuxWorld (if
nobody else does) when my schedule starts to be less hectic.

I'm thinking more about the Win32 port because I'm being asked to port a
POE app to windows that uses Wheel::Run and Pipe quite extensively.  I
haven't even started to look at this - mostly because it seems scary
considering the notes at the end of the Wheel::Run manpage.

-Al Tobey



********************************************************************
This email and any files transmitted with it are confidential
and intended solely for the use of the individual or entity
to whom they are addressed.  If you have received this 
email in error please notify the Priority Health Information
Services Department at (616) 942-0954.
********************************************************************

Reply via email to