我是C中回调函数的新手。我想创建一个定时回调。
场景:我想要一个定时器函数,它将在定时器到期时触发回调函数。例如,每隔5秒,计时器就会过期并调用函数。
我应该如何处理这个问题?
您应该如何处理这个问题
与所有问题一样:
- 准确地弄清楚你想做什么
- 问问自己,如果需要的话(如果可以的话),你会自己怎么做
- 试着将前一步形式化,尽可能接近于单个语句,一步一个步骤
- 找出哪些阻碍你/你不知道该怎么做。对此进行一些研究
您想精确地做什么
您想要"创建定时回调"。我认为这意味着:
- 您有一个函数
foo
在做一些工作 - 你的程序正在运行
- 您希望能够在程序中的任何位置说"从现在开始,在X毫秒内,呼叫
foo
">
你自己会怎么做
例如,我认为你会用X毫秒启动一个秒表,然后继续做你正在做的事情。当秒表达到零时,你停止你所做的事情,做你需要做的事情。最后,继续你正在做的事情。
是什么挡住了你
从你的问题来看,我认为有两件事阻碍了你:
- 您需要了解如何在C中进行函数回调。请参阅"函数指针">
- 你需要了解如何设置计时器,并在计时器为零时做一些事情
几次谷歌搜索将对您两者都有帮助。