udp
通訊的特點是無連線。這裡只要乙個處理器
udp_peer_event_handler
,用來監聽是否有資料報。
圖表2 ‑
5
圖表2 ‑
6
**如下:
udp_peer_event_handler.h
#ifndef udp_peer_event_handlerh
#define udp_peer_event_handlerh
#include
#include
#include
#include
class udp_peer_event_handler:public ace_event_handler
udp_peer_event_handler(int port);
private:
ace_inet_addr addr;
ace_sock_dgram gram_; };
#endif
udp_peer_event_handler.cpp
#include
#include "udp_peer_event_handler.h"
int udp_peer_event_handler::handle_input(ace_handle fd)
udp_peer_event_handler::udp_peer_event_handler(int port):addr(port),gram_(addr)
main.cpp
#include "udp_peer_event_handler.h"
int main(int argc, char* argv)
ACE的反應器模型
1為什麼要反應器模型 前面的文章有個共同的特點,那就是針對一對一的通訊情況,甚至雙方通訊的先後都是定式的。對於要處理多個輸入輸出 網路連線,傳統的應用都要建立新的併發單元 程序或執行緒 每個輸入輸出 網路連線乙個併發單元。這可以很好的工作,但是帶來的執行時開銷也是很大的,在一些情況下,是無法接受的。...
ACE反應器模型的應用 定時器
反應器的 schedule timer 函式用來設定乙個定時事件,當時間到達時 事件處理器的 handle timeout 處理函式。schedule timer 的原型如下 schedule timer ace event handler event handler,const void arg,...
ACE反應器模型的應用 TCP伺服器的設計
設計 tcp 伺服器需要設計兩個事件處理器,乙個用來監聽客戶端的連線,另乙個當連線建立後用來處理與客戶端的通訊。圖表 2 3 tcp server event handler 的 handle input 用來處理當有客戶端連線時建立新連線。tcp peer event handler 用來處理建立...