public void Collect(Byte[] Msg) { CastPacket Pac = (CastPacket)SerializationUnit.DeserializeObject(Msg); if (Pac == null) { return; } if (Pac.Data == null) { return; } lock (ObjLock) { List <CastPacket> ListPacket = null; Boolean bContain = DicCollectedPacket.TryGetValue(Pac.TimeStamp, out ListPacket); if (bContain == false) { ListPacket = new List <CastPacket>(); ListPacket.Add(Pac); DicCollectedPacket.Add(Pac.TimeStamp, ListPacket); } else { ListPacket.Add(Pac); } CurrentTimeStamp = Math.Max(Pac.TimeStamp, CurrentTimeStamp); } }
public void Collect(Byte[] Msg) { //CastPacket Pac = (CastPacket)SerializationUnit.DeserializeObject(Msg); //strjson.Add("TimeStamp", TimeStamp); //strjson.Add("total", total); //strjson.Add("index", total); //strjson.Add("data", chunk); //strjson.Add("dataOffset", chunkLength * chunks); //strjson.Add("totalLength", data.Length); long TimeStamp = getLong(Msg, 0); int total = getInt(Msg, 8); int index = getInt(Msg, 12); int dataOffset = getInt(Msg, 16); int totalLength = getInt(Msg, 20); byte[] content = subBytes(Msg, 24, Msg.Length - 24); Console.WriteLine("TimeStamp=" + TimeStamp + ",total=" + total + ",index=" + index + ",dataOffset=" + dataOffset + ",totalLength=" + totalLength); //JObject Pac = JObject.Parse(str); if (content == null) { return; } // if (Pac.Data == null) // return; lock (ObjLock) { List <byte[]> ListPacket = null; Boolean bContain = DicCollectedPacket.TryGetValue(TimeStamp, out ListPacket); if (bContain == false) { ListPacket = new List <byte[]>(); ListPacket.Add(Msg); DicCollectedPacket.Add(TimeStamp, ListPacket); } else { ListPacket.Add(Msg); } Console.WriteLine("Collect tostring>>>" + ListPacket.ToString()); CurrentTimeStamp = Math.Max(TimeStamp, CurrentTimeStamp); } }