private void DeviceRead(Stream stream) { if (_Stream == null) { throw new InvalidDataException("Cannot read to null stream"); } //장비에서 변수값만큼 데이터를 읽어옵니다. var buffer = new byte[10]; int read = _Stream.Read(buffer, 0, 10); if (read != 0) { //동기화가 된 버퍼일 경우 버퍼읽기로 넘어감 if (buffer[0] == 165 && buffer[9] == 90) { bufferManager.BufferRead(buffer); } //동기화가 안됐을 경우 동기화를 위해 버퍼 1byte씩 넘김 //조건넣어서 바로 맞추려는 것보다 1byte씩 동기화용 버퍼읽기가 효과적임 else { print(_Stream.Read(buffer, 0, 1).ToString()); } } }