利用ACL库快速创建你的网络程序--ACL_VSTREAM 流的使用

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*} 如果不为空则表示新接收的客户端流

http://c.tieba.baidu.com/p/3343932442

http://c.tieba.baidu.com/p/3343933631

http://c.tieba.baidu.com/p/3360004131

http://c.tieba.baidu.com/p/3360025086

http://c.tieba.baidu.com/p/3360026002

http://c.tieba.baidu.com/p/3360026990

http://c.tieba.baidu.com/p/3360035622

http://c.tieba.baidu.com/p/3360039612

http://c.tieba.baidu.com/p/3360042452

http://c.tieba.baidu.com/p/3360043626

http://c.tieba.baidu.com/p/3360044870

http://c.tieba.baidu.com/p/3360066307

http://c.tieba.baidu.com/p/3360074347

http://c.tieba.baidu.com/p/3330440337

http://c.tieba.baidu.com/p/3330447685

http://c.tieba.baidu.com/p/3330447102

http://c.tieba.baidu.com/p/3330446783

http://c.tieba.baidu.com/p/3330445786

http://c.tieba.baidu.com/p/3330443346

http://c.tieba.baidu.com/p/3330442439

http://c.tieba.baidu.com/p/3330441983

http://c.tieba.baidu.com/p/3330441429

http://c.tieba.baidu.com/p/3348149393

http://c.tieba.baidu.com/p/3348153576

http://c.tieba.baidu.com/p/3348161854

http://c.tieba.baidu.com/p/3348157377

http://c.tieba.baidu.com/p/3361120824

http://c.tieba.baidu.com/p/3348165622

http://c.tieba.baidu.com/p/3348179673

http://c.tieba.baidu.com/p/3330439952

http://c.tieba.baidu.com/p/3361121467

http://c.tieba.baidu.com/p/3361122617

http://c.tieba.baidu.com/p/3361173026

http://c.tieba.baidu.com/p/3361123998

http://c.tieba.baidu.com/p/3361127689

http://c.tieba.baidu.com/p/3361169237

http://c.tieba.baidu.com/p/3409866665

http://c.tieba.baidu.com/p/3409873864

http://c.tieba.baidu.com/p/3409879998

http://c.tieba.baidu.com/p/3361170830

http://c.tieba.baidu.com/p/3361180984

http://c.tieba.baidu.com/p/3361143277

http://c.tieba.baidu.com/p/3344753075

http://c.tieba.baidu.com/p/3344759431

http://c.tieba.baidu.com/p/3344768613

http://c.tieba.baidu.com/p/3344763448

http://c.tieba.baidu.com/p/3344767101

http://c.tieba.baidu.com/p/3344767907

http://c.tieba.baidu.com/p/3372410915

http://c.tieba.baidu.com/p/3372410915

http://c.tieba.baidu.com/p/3369940353

http://c.tieba.baidu.com/p/3361165940

http://c.tieba.baidu.com/p/3330444191

http://c.tieba.baidu.com/p/3453252255

http://c.tieba.baidu.com/p/3387728228

http://c.tieba.baidu.com/p/3455731953

http://c.tieba.baidu.com/p/3409795327

http://c.tieba.baidu.com/p/3409791516

http://c.tieba.baidu.com/p/3409787667

http://c.tieba.baidu.com/p/3409767728

http://c.tieba.baidu.com/p/3393319887

http://c.tieba.baidu.com/p/3393289119

http://c.tieba.baidu.com/p/3408720123

http://c.tieba.baidu.com/p/3408719221

http://c.tieba.baidu.com/p/3408718072

http://c.tieba.baidu.com/p/3405066327

http://c.tieba.baidu.com/p/3405064465

http://c.tieba.baidu.com/p/3387719787

http://c.tieba.baidu.com/p/3361144327

http://c.tieba.baidu.com/p/3387721703

http://c.tieba.baidu.com/p/3387722769

http://c.tieba.baidu.com/p/3330446425

http://c.tieba.baidu.com/p/3393438082

http://c.tieba.baidu.com/p/3360067141

http://c.tieba.baidu.com/p/3360070408

http://c.tieba.baidu.com/p/3360079428

http://c.tieba.baidu.com/p/3360076598

http://c.tieba.baidu.com/p/3360095693

http://c.tieba.baidu.com/p/3360078291

http://c.tieba.baidu.com/p/3360074347

http://c.tieba.baidu.com/p/3360066307

http://c.tieba.baidu.com/p/3330444191

http://c.tieba.baidu.com/p/3330439143

http://c.tieba.baidu.com/p/3330447685

http://c.tieba.baidu.com/p/3330445786

http://c.tieba.baidu.com/p/3330442439

http://c.tieba.baidu.com/p/3330439614

http://c.tieba.baidu.com/p/3330441983

http://c.tieba.baidu.com/p/3330440337

http://c.tieba.baidu.com/p/3330441429

http://c.tieba.baidu.com/p/3330447102

http://c.tieba.baidu.com/p/3330446783

http://c.tieba.baidu.com/p/3361170830

http://c.tieba.baidu.com/p/3361180984

http://c.tieba.baidu.com/p/3361127689

http://c.tieba.baidu.com/p/3410122313

http://c.tieba.baidu.com/p/3361165940

http://c.tieba.baidu.com/p/3348161854

http://c.tieba.baidu.com/p/3330443346

http://c.tieba.baidu.com/p/3361122617

http://c.tieba.baidu.com/p/3361121467

http://c.tieba.baidu.com/p/3348179673

http://c.tieba.baidu.com/p/3348157377

http://c.tieba.baidu.com/p/3348153576

http://c.tieba.baidu.com/p/3348165622

http://c.tieba.baidu.com/p/3348149393

http://c.tieba.baidu.com/p/3361120824

http://c.tieba.baidu.com/p/3455731953

http://c.tieba.baidu.com/p/3453252255

http://c.tieba.baidu.com/p/3453246705

http://c.tieba.baidu.com/p/3343072625

http://c.tieba.baidu.com/p/3353634819

http://c.tieba.baidu.com/p/3410605225

http://c.tieba.baidu.com/p/3387721703

http://c.tieba.baidu.com/p/3387719787

http://c.tieba.baidu.com/p/3414013033

http://c.tieba.baidu.com/p/3354354914

http://c.tieba.baidu.com/p/3354297069

http://c.tieba.baidu.com/p/3354527799

http://c.tieba.baidu.com/p/3354563874

http://c.tieba.baidu.com/p/3354546842

http://c.tieba.baidu.com/p/3354329758

http://c.tieba.baidu.com/p/3354251795

http://c.tieba.baidu.com/p/3354370368

http://c.tieba.baidu.com/p/3354357165

http://c.tieba.baidu.com/p/3354300027

http://c.tieba.baidu.com/p/3354534701

http://c.tieba.baidu.com/p/3354547666

http://c.tieba.baidu.com/p/3354566167

http://c.tieba.baidu.com/p/3354328957

http://c.tieba.baidu.com/p/3354255255

http://c.tieba.baidu.com/p/3354358425

http://c.tieba.baidu.com/p/3354386728

http://c.tieba.baidu.com/p/3354309420

http://c.tieba.baidu.com/p/3354536371

http://c.tieba.baidu.com/p/3354574673

http://c.tieba.baidu.com/p/3354557382

http://c.tieba.baidu.com/p/3354247248

http://c.tieba.baidu.com/p/3354339313

http://c.tieba.baidu.com/p/3354259808

http://c.tieba.baidu.com/p/3354493596

http://c.tieba.baidu.com/p/3354362725

http://c.tieba.baidu.com/p/3354313871

http://c.tieba.baidu.com/p/3354537993

http://c.tieba.baidu.com/p/3354250060

http://c.tieba.baidu.com/p/3354575677

http://c.tieba.baidu.com/p/3354351963

http://c.tieba.baidu.com/p/3354511292

http://c.tieba.baidu.com/p/3354289895

http://c.tieba.baidu.com/p/3354558402

http://c.tieba.baidu.com/p/3354319537

http://c.tieba.baidu.com/p/3354363645

http://c.tieba.baidu.com/p/3350289085

http://c.tieba.baidu.com/p/3353721933

http://c.tieba.baidu.com/p/3350456016

http://c.tieba.baidu.com/p/3351037171

http://c.tieba.baidu.com/p/3350363233

http://c.tieba.baidu.com/p/3350349898

http://c.tieba.baidu.com/p/3350457130

http://c.tieba.baidu.com/p/3351123597

http://c.tieba.baidu.com/p/3353725953

http://c.tieba.baidu.com/p/3350284748

http://c.tieba.baidu.com/p/3350347255

http://c.tieba.baidu.com/p/3350360766

http://c.tieba.baidu.com/p/3350273858

http://c.tieba.baidu.com/p/3350453622

http://c.tieba.baidu.com/p/3353809347

http://c.tieba.baidu.com/p/3350526333

http://c.tieba.baidu.com/p/3350447381

http://c.tieba.baidu.com/p/3350342017

http://c.tieba.baidu.com/p/3350356366

http://c.tieba.baidu.com/p/3350523703

http://c.tieba.baidu.com/p/3350340312

http://c.tieba.baidu.com/p/3350365694

http://c.tieba.baidu.com/p/3350352960

http://c.tieba.baidu.com/p/3348670587

http://c.tieba.baidu.com/p/3348699252

http://c.tieba.baidu.com/p/3348680676

http://c.tieba.baidu.com/p/3348660343

http://c.tieba.baidu.com/p/3348698072

http://c.tieba.baidu.com/p/3348667855

http://c.tieba.baidu.com/p/3348657356

http://c.tieba.baidu.com/p/3348675117

http://c.tieba.baidu.com/p/3348695151

http://c.tieba.baidu.com/p/3348667213

http://c.tieba.baidu.com/p/3348674152

http://c.tieba.baidu.com/p/3353832562

http://c.tieba.baidu.com/p/3350783956

http://c.tieba.baidu.com/p/3350454490

http://c.tieba.baidu.com/p/3350361599

http://c.tieba.baidu.com/p/3348664638

http://c.tieba.baidu.com/p/3348669605

http://c.tieba.baidu.com/p/3348703872

http://c.tieba.baidu.com/p/3348681271

http://c.tieba.baidu.com/p/3348666102

http://c.tieba.baidu.com/p/3348705091

http://c.tieba.baidu.com/p/3348705091

http://c.tieba.baidu.com/p/3348673191

http://c.tieba.baidu.com/p/3348693503

http://c.tieba.baidu.com/p/3349157931

http://c.tieba.baidu.com/p/3349120813

http://c.tieba.baidu.com/p/3349060428

http://c.tieba.baidu.com/p/3349100871

http://c.tieba.baidu.com/p/3349078302

http://c.tieba.baidu.com/p/3348714829

http://c.tieba.baidu.com/p/3349181780

http://c.tieba.baidu.com/p/3349056950

http://c.tieba.baidu.com/p/3349075797

http://c.tieba.baidu.com/p/3349116319

http://c.tieba.baidu.com/p/3348711009

http://c.tieba.baidu.com/p/3348711009

http://c.tieba.baidu.com/p/3349107765

http://c.tieba.baidu.com/p/3349167134

http://c.tieba.baidu.com/p/3348708956

http://c.tieba.baidu.com/p/3349135247

时间: 2024-12-27 07:59:44

利用ACL库快速创建你的网络程序--ACL_VSTREAM 流的使用的相关文章

利用 Spring Initializr 快速创建SpringBoot应用

利用 Spring Initializr 快速创建SpringBoot应用 Spring Initializr是Spring 官方的引用构建工具,Idea Ultimate版本默认对其支持 本节咱们学习Spring Boot应用的快速创建 学习视频: http://www.itlaoqi.com/chapter/1683.html 源码地址: QQ群 814077650 , 群共享中自助下载 老齐的官网: itlaoqi.com (更多干货就在其中) 操作流程 Create new projec

使用 acl 库编写多线程应用程序

在 <利用ACL库开发高并发半驻留式线程池程序> 中介绍了如何使用 C 版本的 acl 线程库编写多线程程序,本文将会介绍如何使用 C++ 版本的 acl 线程库编写多线程程序,虽然 C++ 版 acl 线程库基于 C 版的线程库,但却提供了更为清晰简洁的接口定义(很多地方参考了 JAVA 的线程接口定义).下面是一个简单的使用线程的例子: #include "acl_cpp/lib_acl.hpp" ////////////////////////////////////

JEPLUS之字段快速创建的辅助工具

JEPLUS表字段的高级添加方式字典辅助,表辅助是在实际业务中很常用的一个功能,对于初学者来说可以把字典辅助理解为是一种借助其他字典来满足现在字典的功能,把表辅助理解为是一种表与表之间的外键关联. 一.效果展示 二.准备工作 1.JEPLUS平台5.0.0.2 2.数据库MySql 5.7 三.实现步骤 1.字典辅助:当我们的一些字典表里面需要某些字段如.性别.请假类型.等类型字典的时候我们就可以通过添加字典辅助的方式来帮我们实现. 这就是在创建表时利用了字段快速创建的辅助工具 字段辅助 表辅助

利用Windows Azure Pack创建虚拟化网络

接上一篇,SCVMM网络虚拟化配置软件定义网络SDN,不太清楚的同学可以先看看.我们利用Windows Server 2012 R2与SCVMM R2进行了网络虚拟化的配置,下面我们要来验证一下网络虚拟化是否生效.那么,最简单的方法就是利用Windows Azure Pack来进行虚拟网络创建.最近太忙了,这篇文章早写好了快两个月. 1.首先,我们登陆的Windows Azure Pack的租户门户,选择自定义创建"虚拟网络".   2.下面填入虚拟网络的名称,选择IPV4地址协议,配

windows azure虚拟机创建——快速创建,库模板创建

在 Windows Azure 上创建新虚拟机是一件非常轻松的事情.只需使用浏览器访问 Windows Azure 管理门户,选择左侧的"虚拟机"选项卡,然后单击底部命令栏中的"新 建"按钮. 这里我们有两种方式可以选择:快速创建创建虚拟机或者从库中选择模板来创建虚拟机,这篇博文将对两种方式都进行下介绍 首先,我们选择"快速创建",输入相应的信息并选择系统映像和CPU及内存规格,这里需要注意的是密码一定要符合复杂性要求:8个字符.数字.大小写字母

利用Azure快速创建WordPress博客网站

利用Azure新建菜单创建WordPress网站,然后根据WordPress部署向导完成部署,非常快速方便. 后续升级WordPress版本也是非常方便. ??

使用 acl 生成向导快速创建服务器程序

在以前有关使用 acl 的技术文章(如:使用 acl::master_threads 类编写多进程多线程服务器程序 ,用 acl::master_aio 类编写高并发非阻塞服务器程序,使用 acl::master_proc 类编写多进程服务器程序)中,对如何使用 acl 服务器框架类编写服务器应用程序做了较为详细的描述,但手工输入这些代码毕竟是比较烦人的,在 acl 的 app/ 目录下有一个向导程序:wizard,可以帮助开发者快速生成服务器框架模板,开发者只需在相关位置添加业务逻辑代码即可.

跨平台网络通信与服务器编程框架库(acl库)介绍

一.描述 acl 工程是一个跨平台(支持LINUX,WIN32,Solaris,MacOS,FreeBSD)的网络通信库及服务器编程框架,同时提供更多的实用功能库.通过该库,用户可以非常容易地编写支持多种模式(多线程.多进程.非阻塞.触发器.UDP方式)的服务器程序,WEB 应用程序,数据库应用程序.此外,该库还提供了常见应用的客户端通信库(如:HTTP.SMTP.ICMP.memcache.beanstalk),常见流式编解码库:XML/JSON/MIME/BASE64/UUCODE/QPCO

利用Flare3D和Stage3D创建3D

Flare3D 是一款功能强大的引擎,它使得 Flash 中的 3D 内容管理变得更为简便. 它的设计宗旨是提供一个完美的开发工作流程,以便你能够获得事半功倍的效果. 本教程侧重讨论在 Flash 中创建 3D 游戏所需的 ActionScript 代码:但本范例项目不包括创建和导出游戏组件文件的过程. 在完成本教程之后,你将了解在Flash中开发一个完整 3D 游戏所需的基本概念. 在本范例中,你将使用 Stage3D 和 Flare3D 处理用于创建一个名称为 Yellow Planet 的