在c中实现定时器回调



我是C中回调函数的新手。我想创建一个定时回调。

场景:我想要一个定时器函数,它将在定时器到期时触发回调函数。例如,每隔5秒,计时器就会过期并调用函数。

我应该如何处理这个问题?

您应该如何处理这个问题

与所有问题一样:

  • 准确地弄清楚你想做什么
  • 问问自己,如果需要的话(如果可以的话),你会自己怎么做
  • 试着将前一步形式化,尽可能接近于单个语句,一步一个步骤
  • 找出哪些阻碍你/你不知道该怎么做。对此进行一些研究

您想精确地做什么

您想要"创建定时回调"。我认为这意味着:

  • 您有一个函数foo在做一些工作
  • 你的程序正在运行
  • 您希望能够在程序中的任何位置说"从现在开始,在X毫秒内,呼叫foo">

你自己会怎么做

例如,我认为你会用X毫秒启动一个秒表,然后继续做你正在做的事情。当秒表达到零时,你停止你所做的事情,做你需要做的事情。最后,继续你正在做的事情。

是什么挡住了你

从你的问题来看,我认为有两件事阻碍了你:

  • 您需要了解如何在C中进行函数回调。请参阅"函数指针">
  • 你需要了解如何设置计时器,并在计时器为零时做一些事情

几次谷歌搜索将对您两者都有帮助。

最新更新