网络收发之cycleBuf】的更多相关文章

#pragma once #include <iostream> #include <string> class cyclebuffer { protected: volatile int32_t m_nReadIndex; volatile int32_t m_nWriteIndex; volatile int32_t m_nDataSize; //有效数据大小 volatile int32_t m_nBufSize; //总buf大小 uint_8 *m_pBuf; publi…
本文将介绍网络连接建立的过程.收发包流程,以及其中应用层.tcp层.ip层.设备层和驱动层各层发挥的作用. 应用层 对于使用socket进行网络连接的服务器端程序,我们会先调用socket函数创建一个套接字: fd = socket(AF_INET, SOCK_STREAM, ); 以上指定了连接协议,socket调用返回一个文件句柄,与socket文件对应的inode不在磁盘上,而是存在于内存. 之后我们指定监听的端口.允许与哪些ip建立连接,并调用bind完成端口绑定: server_add…
WIFI就是一种无线联网技术,常见的是使用无线路由器.那么在这个无线路由器的信号覆盖的范围内都可以采用WIFI连接的方式进行联网.如果无线路由器连接了一个ADSL线路或其他的联网线路,则又被称为"热点".      在Android中对Wifi操作,android本身提供了一些有用的包,在android.net.wifi包下面,主要包括以下几个类和接口: 1.ScanResult    主要用来描述已经检测出的接入点,包括接入点的地址,接入点的名称,身份认证,频率,信号强度等信息.其实…
概述 AFNetworking是一个非常受欢迎的轻量级的iOS.Mac OS X网络通信类库.它建立在NSURLConnection.NSOperation以及其技术的基础上,有着精心设计的模块结构和功能丰富的API,让很多网络通信功能的实现变得十分简单.AFNetworking支持HTTP请求和基于REST的网络服务(包括GET.POST. PUT以及DELETE等).支持ARC.AFNetworking项目中还包含一些列单元测试.要求iOS 5.0及以上版本,或者Mac OS 10.7及以上…
Android开发过程中,当涉及到网络通信的时候,有一些字段须要抓包获取.我之前由于SSDP设备发现的包头格式没有写对,经过抓包分析和标准包头对照发现了这个困扰我非常久的问题.总之,掌握在Android手机里面抓包是非常有必要的. 准备工作:Android系统的手机,网络环境,tcpdump.破解手机root权限.建议最好在手机里面安装RE文件管理器而且给root权限.详细过程例如以下: 首先,通过adb工具将tcpdump推送到手机,tcpdump的下载地址为:http://www.straz…
1.实例化OkHttpClient对象,OkHttpClient包含了以下属性,以及set()和get()方法.但并没有包含具体的执行方法,详情见源码. //实例化OkHttpClent对象 private OkHttpClient client = new OkHttpClient(); private static SSLSocketFactory defaultSslSocketFactory; private final RouteDatabase routeDatabase; priv…
1.OkHttp框架使用了OkIo框架,不要忘记下OkIo.jar 2.通过POST访问网络,和通过GET访问网络基本相同,多了设置请求参数的过程.主要分为五步: (1).声明并实例化一个OkHttpClient对象 (2).声明并实例化一个RequestBody对象 (3).声明并实例化一个Request对象 (4).执行Request请求,并得到一个Response对象 (5).根据Response的isSuccessful()方法判断是否成功,然后从Response对象中获取返回数据. 3…
1.OkHttp框架使用了OkIo.jar包,不要忘记添加. 2.对于Request对象是如何实例化的,大家可以参考--java builder设计模式 http://www.cnblogs.com/moonz-wu/archive/2011/01/11/1932473.html 3.通过同步GET访问网络,主要分为四步: (1).声明并实例化一个OkHttpClient对象. (2).声明并实例化一个Request对象,并设置URL等参数. (3).执行Request请求,并获得一个Respo…
1.自定义一个解析Json的Request,这里使用JackSon框架来解析Json.你也可以自定义一个解析XML的Request,或者使用FastSon来解析Json. 2.我们首先来看一下StringRequest的源码.继承自Request<T>,主要是重写parseNetworkResponse()和deliverResponse()方法. public class StringRequest extends Request<String> { private final…
1.ImageRequest用法和StringRequest一样,主要分为3步: (1).实例化一个RequestQueue对象 (2).设置ImageRequest对象参数,并将ImageRequest对象加入RequestQueue队列 (3).执行start()方法 2.ImageLoader用法 (1).实例化一个RequestQueue对象 (2).实例化一个ImageLoader对象 (3).实例化一个ImageListener对象 (4).执行ImageLoader对象的get()…