小生最近做个产品 socket通信,对这块了解甚少,同样对C也了解甚少。把需要的功能实现了,但是异常方面总觉得应该做些什么,但不了解有什么地方需要实现。
服务器过来的是逐桢图片,大概的实现流程,使用的AsyncSocket,服务器发送数据量,先放入NSMutableData *totalData中,每过来一个数据就appendData,加入到totalData里面,然后到数据模块里面对16进制数据进行处理,得到一张完整的图片后将其从toatlData中使用subdataWithRange将其remove.
因为测试环境也是我自个搭建的,不知道正常使用下会有多少异常,我有几个疑惑的地方: 1,我没实现ringbuffer,直接通过NSMutableData来处理,这个会有影响不? 2,对于数据的接受方面,直接append会不会有数据错位的情况,对于数据的部分丢失一般是直接remove掉还是保留? 3,每接受到一次数据才处理一次。也就是说每响应一次socket的delegate才处理一次数据会不会太慢?
- (void)onSocket:(AsyncSocket *)sock didReadData:(NSData *)data withTag:(long)tag
holdtom
翻阅古今
相关分类