On Sun, Feb 29, 2004 at 05:19:27PM +0100, Bruno Boettcher wrote:
>
> print("sending out batch \n");
> my $task = POE::Wheel::Run->new
> ��������( Program => sub {�
>
> �������� print("about to spawn batch\n");
> �������� $actor->batch($job)�
> �������� },
> �������� StdoutFilter => POE::Filter::Reference->new(),
> �������� StdoutEvent => "task_result",
> �������� StderrEvent => "task_debug",
> �������� CloseEvent => "task_done",
> �������� );
> etc..
>
> but when i execute this, i see the
> sending out batch
> sent out batch
>
> but the print of the anon sub... nothing, and no result from prints from
> the object method beeing called, and nothing in the DB.... so this call
> gets somehow lost...
You are using StdoutFilter => POE::Filter::Reference->new(), but you
are printing a plain string from the child process.
POE::Wheel::Run is trying to parse "about to spawn batch" as a
POE::Filter::Reference record and failing.
The do_stuff() function in
http://poe.perl.org/?POE_Cookbook/Child_Processes_3 should show you
how a child process can use Filter::Reference to send messages back to
the parent.
--
Rocco Caputo - [EMAIL PROTECTED] - http://poe.perl.org/