你能在异步文件流上设置一个计时器吗?它只在没有收到任何内容时倒计时

本文关键字:倒计时 任何内 一个 文件 异步 设置 计时器 | 更新日期: 2023-09-27 18:25:39

我使用一个基本文件流通过hid.dll.读取outputReportBuffer

在设置过程中,我实时接收消息,并在程序中显示数据。目前,我正在努力寻找一个计时器的解决方案,该计时器应该在我停止从文件流接收消息的那一刻启动。

在文件流中是否有任何触发器,我可以使用它来检查是否仍有消息通过?

try
{
    readTrigger = true;
    while (readTrigger)
    {
        await fileStreamDeviceData.ReadAsync(outputReportBuffer, 0, outputReportBuffer.Length);
    }
}
catch (Exception ex)
{
    throw ex;
}

这就是我使用文件流的方式,它一直在为我工作,没有任何问题,直到现在,我需要某种触发器/计时器来查看是否仍有消息通过。

任何关于如何做得更好的建议或指向正确方向的指针都将不胜感激。

你能在异步文件流上设置一个计时器吗?它只在没有收到任何内容时倒计时

ReadAsync接受取消令牌。您可以传入一个令牌,该令牌将在一段时间后自行取消。如果任务最终被取消,那么你就会知道读取超时,并可以做出相应的响应。