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