当前位置:主页   - 电脑 - 程序设计 - C/C++
利用ACL库快速创建你的网络程序--ACL_VSTREAM 流的使用
来源:网络   作者:zsxxsz   更新时间:2011-09-03
收藏此页】    【字号    】    【打印】    【关闭

  1、概述

  操作系统在API层为我们提供了进行网络通讯的库(一组socket函数库),但使用起来未免复杂,而且极易出错,虽然这些socket库最初起源于 BSD系统,各个操作系统厂商都提供了自身平台的接口实现,但这些接口在不同OS上又略有差别,所以当你想写一个跨平台的网络通信程序时,工作量还是有的,并且如不知晓各个平台下的差异也极易出错。

  本节向你介绍了怎样使用ACL库中的数据流(ACL_VSTREAM)来快速搭建你的网络通信程序;另外,ACL_VSTREAM 不仅是跨平台的,而且既可用于网络通信流,又可用于文件流,本节仅介绍网络流的例子。

  2、网络通信函数接口说明

  2.1)服务端接口

  C代码

/** 
 * 监听某个地址(对于UNIX,还可以监听域套接字) 
 * @param addr {const char*} 监听地址 
 * 如:127.0.0.1:80, 或域套接字, 如:/tmp/test.sock 
 * @param qlen {int} 监听队列的长度 
 * @return {ACL_VSTREAM*} 监听流指针 
 */ 
ACL_API ACL_VSTREAM *acl_vstream_listen(const char *addr, int qlen); 
 
/** 
 * 从监听流中接收一个客户端连接流 
 * @param listen_stream {ACL_VSTREAM*} 监听流 
 * @param ipbuf {char*} 如果不为空则用来存储客户端的IP地址 
 * @param bsize {int} 如果 ipbuf 不为空,则表示 ipbuf 的空间大小 
 * @return {ACL_VSTREAM*} 如果不为空则表示新接收的客户端流 
 */ 
ACL_API ACL_VSTREAM *acl_vstream_accept(ACL_VSTREAM *listen_stream, 
          char *ipbuf, int bsize); 

其它资源
来源声明

版权与免责声明
1、本站所发布的文章仅供技术交流参考,本站不主张将其做为决策的依据,浏览者可自愿选择采信与否,本站不对因采信这些信息所产生的任何问题负责。
2、本站部分文章来源于网络,其版权为原权利人所有。由于来源之故,有的文章未能获得作者姓名,署“未知”或“佚名”。对于这些文章,有知悉作者姓名的请告知本站,以便及时署名。如果作者要求删除,我们将予以删除。除此之外本站不再承担其它责任。
3、本站部分文章来源于本站原创,本站拥有所有权利。
4、如对本站发布的信息有异议,请联系我们,经本站确认后,将在三个工作日内做出修改或删除处理。
请参阅权责声明