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

时间:2014-11-15 16:58:40

标签: c#


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

1 个答案:

答案 0 :(得分:1)

当您按下按钮时,您的程序将被激活,某些方法被调用。您需要在收到SMS数据时调用此方法。这可以使用线程(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数据数据更新表格。

许多方法都是这样做的。一个快速的Google for"程序流程"乍一看没有找到任何有用的链接,这可以解释你可以做到这一点的许多方法。也许查看其他代码会有所帮助。我经常搜索开源存储库,查找我可以看到的代码,看看别人是怎么做的。