public static int DSGetNextData(ref DtuDataStruct pDataStruct, ushort waitseconds) { if (IsRunning) { if (DataQueue.Count == 0) { return(0); } //解析协议 var frame = new byte[0]; lock (m_lock) { frame = DataQueue[0]; DataQueue.RemoveAt(0); } var result = ExtractFrame(ref frame); if (!result) { return(0); } pDataStruct.m_data_buf = frame; pDataStruct.m_data_len = (ushort)(frame.Length); pDataStruct.m_phoneno = Encoding.Default.GetBytes("13300000000"); return(1); } return(1); }
public static extern int DSGetNextData(ref DtuDataStruct pDataStruct, ushort waitseconds);