如何在 C# 中制作实时代码

本文关键字:实时 代码 | 更新日期: 2023-09-27 18:30:28


我想从我的 GSM 调制解调器读取短信.
我写了 C# 代码.
当我单击开始按钮时,此代码运行.
我想让我的程序在收到短信时阅读短信,而不是单击按钮.
谢谢。

如何在 C# 中制作实时代码

当您按下按钮时,您的程序被键控激活,调用某些方法。 您需要在收到短信数据时调用此方法。这可以使用线程(SMS 线程和显示数据的主线程)来完成,尽管使用循环也可以轻松完成。在伪代码中:

while (don't quit) {
    display page;
    check for sms data;
    sleep for small time to allow other OS programs to run also;
}

这是一个"紧密循环",可能会使用过多的 CPU 时间,具体取决于实际步骤的代码。对于紧凑的程序循环,一个简单的方法是应用某种睡眠方法。

还有其他方法可以做同样的事情,可能会使用访问者模式,线程等......

看来你只是缺少循环。您的程序可能更像:

while (don't quit) {
    display page.
    wait for button press.
}

尽管如果不研究您的程序流程,乍一看该流程不会很明显。

如果您正在使用触发器(按下

按钮可能是一个触发器),您可以在触发频率(100 毫秒、1 秒等)的计时器上触发,该计时器在触发时检查 SMS 数据,如果有 SMS 数据,它会更新表单。

有很多很多方法可以做到这一点。乍一看,快速的Google"程序流"找不到任何有用的链接来解释您可以做到这一点的多种方法。也许查看其他人的代码会有所帮助。我经常在开源存储库中搜索我可以查看的代码,以了解其他人是如何做的。