En mi aplicación utilizo la clase .NET SerialPort para leer y escribir datos. La lectura se realiza utilizando el evento DataReceived, supongo internamente en un hilo de ThreadPool. La escritura se realiza mediante el subproceso de interfaz de usuario (WinForms).¿Es necesario sincronizar las escrituras/lecturas de .NET SerialPort?
Me preguntaba si es necesario sincronizar el acceso a la instancia de SerialPort, para que no se produzcan lecturas/escrituras al mismo tiempo. Mi conciencia me dice que debo poner bloqueos a estas llamadas, pero estoy desconcertado ya que todos los ejemplos de C# SerialPort que encuentro en Internet no usan el bloqueo en absoluto.
Definitivamente debe bloquear. Lo más probable es que los ejemplos que encuentre en Internet estén simplificados en exceso. Intento que sea una regla leer detenidamente la documentación de cualquier ejemplo que intento seguir, en caso de que se haya omitido algo como esto. –