- 论坛徽章:
- 0
|
原帖由 iunknown 于 2007-7-6 19:41 发表
ACE 基于 OO 的接口
- class Event_Handler {
- pupblic:
- virtual void handle_input( HANDLE handle ) = 0;
- virtual void handle_output( HANDLE handle ) = 0;
- virtual void handle_timeout( const Time_Value & ) = 0;
- virtual void handle_close( HANDLE handle, Event_Type et ) = 0;
- };
复制代码
看了一下代码,SPServer 实现的不是类似 Event_Handler 这样的接口,而是
- class SP_Handler {
- public:
- virtual ~SP_Handler();
- // return -1 : terminate session, 0 : continue
- virtual int start( SP_Request * request, SP_Response * response ) = 0;
- // return -1 : terminate session, 0 : continue
- virtual int handle( SP_Request * request, SP_Response * response ) = 0;
- virtual void error( SP_Response * response ) = 0;
- virtual void timeout( SP_Response * response ) = 0;
- virtual void close() = 0;
- };
复制代码
这个接口更类似 proactor ,而不是 reactor 。接口上体现的不是 event ,而是 result 。 |
|