3
我不知道如何使用标签参数的方法,如GCDAsyncSocket标签参数
readDataWithTimeout: tag:
writeData: tag:
,如果我想使用标签来识别数据包的类型,会发生什么?例如,我说标记== 2意味着数据包是来自客户端的消息,标记== 1意味着数据包是来自服务器的消息... 如果这是好的,我是否需要调用readData:withTag :几次(每个不同的标签一次)?
[readDataWithTimeout:-1 tag:1];
[readDataWithTimeout:-1 tag:2];
有没有办法地说:“每次读取数据,而无需关心标签”,然后在didReadData:withTag:方法根据标签处理数据?
谢谢,我更仔细阅读doc和了解。为了确定数据包的“类型”,我决定将所有数据都包含在NSDictionary中,并使用一个可以识别数据包的密钥。例如,当我读取一个NSData时,我提取密钥(NSString)并根据密钥处理该数据包。这是一种好的做法,还是应该改变我的方法? – rmonjo 2012-07-18 08:14:37
@ user1437126所以你要序列化字典以及数据?听起来对我很好。 – 2012-07-18 15:23:11
是的,这就是我所做的。整个下午都测试了这个解决方案,高效且干净。再次感谢您的回复 – rmonjo 2012-07-18 16:56:24