New file |
| | |
| | | ## BHomeBuså
å«çè§è² |
| | | - NetProxyServiceï¼ç½ç»ä»£çæå¡ï¼ï¼ è´è´£è·¨æºå¨è½¬ååå¸æè¯·æ±æ¶æ¯ |
| | | - BusServiceï¼ æ»çº¿æå¡ï¼: åå¸è®¢é
çè·¯ç±ï¼è´è´£è®°å½è®¢é
è
çæ¶æ¯å¹¶æåå¸è
åå¸çæ¶æ¯è½¬åç»æå
´è¶£ç订é
è
ã |
| | | - Pub/Sub Clientï¼åå¸è®¢é
客æ·ç«¯ï¼ï¼ åBusServiceå叿¶æ¯æè
å¨BusServiceä¸è®¢é
æå
´è¶£çæ¶æ¯ |
| | | - Request/Reply Client ï¼è¯·æ±åºç客æ·ç«¯ï¼ï¼åå
¶ä»æºå¨/è¿ç¨åéè¯·æ±æ¶æ¯æè
ä»å
¶ä»æºå¨/è¿ç¨æ¥ååºçæ¶æ¯ |
| | | |
| | | å
¶ä¸BusServiceåNetProxyServiceæ¯æå¡è¿ç¨ï¼ä½¿ç¨è
æå®èµ·æ¥åå°±ä¸éè¦å
³å¿äºã使ç¨è
主è¦å
³æ³¨çæ¯Pub/Sub Client å Request/Reply Client |
| | | |
| | | ## æ¥å£è¯´æ |
| | | |
| | | ä½¿ç¨æ¶ï¼BusServiceåNetProxyServiceè¿ä¸¤ä¸ªæå¡éè¦å
å¯å¨èµ·æ¥ãå 为åé¢çåè½é½ä¾èµè¿ä¸¤ä¸ªæå¡ã |
| | | |
| | | ### NetProxyService |
| | | |
| | | ### BusService |
| | | net_mod_socket_wrapper.h |
| | | |
| | |
| | | * @send_buf åéçæ¶æ¯ï¼@send_size è¯¥æ¶æ¯ä½çé¿åº¦ |
| | | * @recv_arr è¿åçåºçæ¶æ¯ç»ï¼@recv_arr_size 该æ°ç»é¿åº¦ |
| | | * @return æååéçèç¹çä¸ªæ° |
| | | * ä¼ç¹ï¼1æä¸ªèç¹çæ
éä¸ä¼é»å¡å
¶ä»èç¹ã2æ§è½å¥½ |
| | | * 缺ç¹ï¼ä¸æ¯çº¿ç¨å®å
¨ç, å³ä¸è½æä¸¤ä¸ªä»¥ä¸ç线ç¨åæ¶ä½¿ç¨è¿ä¸ªå¯¹è±¡çæ¹æ³ |
| | | * ä¼ç¹ï¼1æä¸ªèç¹çæ
éä¸ä¼é»å¡å
¶ä»èç¹ã2 æ§è½å¥½ã 3 éç¨thread localææ¯å³ä¿è¯äºçº¿ç¨å®å
¨ï¼åå¯ä»¥ä½¿ç¨è¿æ¥æ± ç¼åè¿æ¥ |
| | | */ |
| | | int sendandrecv(net_node_t *node_arr, int arrlen, void *send_buf, int send_size, |
| | | net_mod_recv_msg_t ** recv_arr, int *recv_arr_size) ; |
| | |
| | | int net_mod_socket_recvfrom_nowait(void *_socket, void **buf, int *size, int *key); |
| | | |
| | | |
| | | |
| | | /** |
| | | * å¦æå»ºç«è¿æ¥çèç¹æ²¡ææ¥åå°æ¶æ¯ä¼ä¸ç´çå¾
|
| | | * ånode_arr ä¸çææç½ç»èç¹åéè¯·æ±æ¶æ¯ï¼èç¹çè¿åä¿¡æ¯æ±æ»å¹¶åå¨å¨recv_arrä¸ |
| | |
| | | * @recv_arr è¿åçåºçæ¶æ¯ç»ï¼@recv_arr_size 该æ°ç»é¿åº¦ |
| | | * @return æååéçèç¹çä¸ªæ° |
| | | * ä¼ç¹ï¼1æä¸ªèç¹çæ
éä¸ä¼é»å¡å
¶ä»èç¹ã2æ§è½å¥½ |
| | | * 缺ç¹ï¼ä¸æ¯çº¿ç¨å®å
¨ç, å³ä¸è½æä¸¤ä¸ªä»¥ä¸ç线ç¨åæ¶ä½¿ç¨è¿ä¸ªå¯¹è±¡çæ¹æ³ |
| | | */ |
| | | int net_mod_socket_sendandrecv(void *_sockt, net_node_t *node_arr, int arrlen, void *send_buf, int send_size, |
| | | net_mod_recv_msg_t ** recv_arr, int *recv_arr_size) ; |