在c中实现定时器回调
Implementing timer callback in c
我是 C 语言回调函数的新手。我想创建一个定时回调。
场景:我想要一个定时器函数,当定时器到期时会触发回调函数。例如,定时器每 5 秒到期并调用该函数。
我该如何解决这个问题?
你应该如何解决这个问题?
与所有问题一样:
- 明确你想做什么
- 问问自己,如果需要(如果可以的话),你会怎么做
- 尝试将上一步形式化为尽可能接近单个语句的句子,一次一个步骤。
- 找出阻碍你的事情/你不知道该怎么做的事情。对此做一些研究。
你想做的正是
你想要"create a timed callback"。我认为这意味着:
- 你有一个函数
foo
做一些工作
- 你有你的程序运行
- 您希望能够在程序的任何位置说 "From right now, in X miliseconds, call
foo
"
你自己会怎么做?
我想你会,例如,用 X 毫秒启动一个秒表,然后继续做你正在做的事情。当秒表归零时,您将停止正在做的事情并做需要做的事情。最后,继续你正在做的事情。
什么阻碍了你?
从你的问题来看,我认为有两点阻碍了你:
- 您需要了解如何在 C 中执行函数回调。请参阅 "function pointers"
- 您需要了解如何设置计时器并在计时器归零时执行操作。
一些 google 搜索将帮助您解决这两个问题。
我是 C 语言回调函数的新手。我想创建一个定时回调。
场景:我想要一个定时器函数,当定时器到期时会触发回调函数。例如,定时器每 5 秒到期并调用该函数。
我该如何解决这个问题?
你应该如何解决这个问题?
与所有问题一样:
- 明确你想做什么
- 问问自己,如果需要(如果可以的话),你会怎么做
- 尝试将上一步形式化为尽可能接近单个语句的句子,一次一个步骤。
- 找出阻碍你的事情/你不知道该怎么做的事情。对此做一些研究。
你想做的正是
你想要"create a timed callback"。我认为这意味着:
- 你有一个函数
foo
做一些工作 - 你有你的程序运行
- 您希望能够在程序的任何位置说 "From right now, in X miliseconds, call
foo
"
你自己会怎么做?
我想你会,例如,用 X 毫秒启动一个秒表,然后继续做你正在做的事情。当秒表归零时,您将停止正在做的事情并做需要做的事情。最后,继续你正在做的事情。
什么阻碍了你?
从你的问题来看,我认为有两点阻碍了你:
- 您需要了解如何在 C 中执行函数回调。请参阅 "function pointers"
- 您需要了解如何设置计时器并在计时器归零时执行操作。
一些 google 搜索将帮助您解决这两个问题。