Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

211
Views
En C #, ¿cómo inicio un método para ejecutar pospuesto con la capacidad de posponer más?

Necesito ejecutar un método retrasado en mi código para poder controlar aún más ese "método pospuesto" (es decir, posponerlo aún más).

Más específicamente, estoy haciendo esto cuando leo datos del puerto serie para asegurarme de que los datos hayan dejado de fluir. Los datos que recibo son bastante inespecíficos, por lo que no puedo confiar en su longitud o en algún símbolo de terminación. En cambio, quiero usar el controlador DataReceived como de costumbre e iniciar el método de "procesar datos" pospuesto durante 200 ms aproximadamente, pero posponerlo una y otra vez si se activan más controladores DataReceived.

Básicamente, mi código tendría que ser algo como esto:

 private string _serialPortCurrentReceivedDataBuffered = null; private void SerialPort_DataReceived(object sender, SerialDataReceivedEventArgs e) { string receivedData = ((SerialPort)sender).ReadExisting(); if (_serialPortCurrentReceivedDataBuffered == null) { _serialPortCurrentReceivedDataBuffered = receivedData; } else { _serialPortCurrentReceivedDataBuffered += receivedData; } <THAT POSTPONED METHOD>.SetStartToTime(DateTime.Now.AddMilliseconds(200)); } private <THAT POSTPONED METHOD>() { string receivedData = _serialPortCurrentReceivedDataBuffered; _serialPortCurrentReceivedDataBuffered = null; <HANDLE RECEIVED DATA> }

¿Hay una manera de hacerlo? Estoy trabajando con .NET Framework 4.7.2.

Además, dentro de <ESE MÉTODO APLAZADO> tendré que manipular la interfaz de usuario (WinForms), si eso tiene alguna consideración en este caso.

¡Gracias por adelantado!

over 4 years ago · Santiago Trujillo
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!