[Ace-users] [ace-users] ACE_Select_Reactor not calling handle_output( )
Steve Huston
shuston at riverace.com
Mon Nov 26 11:13:04 CST 2007
Thanks very much for the PROBLEM-REPORT-FORM.
> ACE VERSION: 5.5
> HOST MACHINE and OPERATING SYSTEM:
> Linux 2.6.9 Kernel.CentOS4.2 (32bit)
> (snip)
> DESCRIPTION:
> I'm building a simple echo test program.
> I have an ACE_Select_Reactor listening in a port waiting data to
> be sent by telnet, for example. The reactor is registered for READ
> events. When telnet client connects, I write eight bytes in
terminal.
> ACE_Reactors calls handle_input() , who tries to read the 8 bytes,
> and then (still inside handle_input() ) it does a schedule_cancel( )
> on read events, and a schedule_wakeup for WRITE events.
Ok.
> I think ACE_Reactor should call handle_ouput( ) , but it is never
> called, so I can send the answer to the client. Only handle_input(
)
> gets called.
Right, this is expected when using schedule_wakeup() and
cancel_wakeup(). Please see C++NPv2 section 3.5 for why this is and
what you need to do to have your events handled as you want.
For more info on C++NPv2, please see
http://www.riverace.com/acebooks/index.htm#cnpv2
Best regards,
-Steve
--
Steve Huston, Riverace Corporation
Want to take ACE training on YOUR schedule?
See http://www.riverace.com/training.htm
More information about the Ace-users
mailing list