Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/c/68.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在c语言中实现定时器回调_C_Linux_Timer_Callback - Fatal编程技术网

在c语言中实现定时器回调

在c语言中实现定时器回调,c,linux,timer,callback,C,Linux,Timer,Callback,我不熟悉C中的回调函数。我想创建一个定时回调 场景:我想要一个计时器函数,它将在计时器过期时触发回调函数。例如,计时器每5秒过期一次并调用函数 我应该如何处理这个问题?您应该如何处理这个问题? 与所有问题一样: 准确地弄清楚你想要做什么 问问你自己,如果你需要的话(如果可以的话),你会怎么做 尝试将前一步形式化,尽可能接近单个语句,一次一步 找出阻碍你/你不知道如何做的事情。做一些研究 您想做的事情 您想“创建一个定时回调”。我认为这意味着: 你有一个函数foo做一些工作 你的程序正在运行

我不熟悉C中的回调函数。我想创建一个定时回调

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

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

您应该如何处理这个问题? 与所有问题一样:

  • 准确地弄清楚你想要做什么
  • 问问你自己,如果你需要的话(如果可以的话),你会怎么做
  • 尝试将前一步形式化,尽可能接近单个语句,一次一步
  • 找出阻碍你/你不知道如何做的事情。做一些研究
您想做的事情

您想“创建一个定时回调”。我认为这意味着:

  • 你有一个函数
    foo
    做一些工作
  • 你的程序正在运行
  • 您希望能够在程序中的任何位置说“从现在开始,在X毫秒内,调用
    foo
你自己会怎么做?

我想你会,比如,启动一个秒表,时间为X毫秒,然后继续做你正在做的事情。当秒表归零时,你停止你所做的事情,做你需要做的事情。最后,继续你正在做的事情

什么阻碍了你?

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

  • 您需要了解如何在C中进行函数回调。请参阅“函数指针”
  • 您需要了解如何使用计时器,并在计时器达到零时执行某些操作
几次谷歌搜索可以帮你解决这两个问题。

你应该如何解决这个问题? 与所有问题一样:

  • 准确地弄清楚你想要做什么
  • 问问你自己,如果你需要的话(如果可以的话),你会怎么做
  • 尝试将前一步形式化,尽可能接近单个语句,一次一步
  • 找出阻碍你/你不知道如何做的事情。做一些研究
您想做的事情

您想“创建一个定时回调”。我认为这意味着:

  • 你有一个函数
    foo
    做一些工作
  • 你的程序正在运行
  • 您希望能够在程序中的任何位置说“从现在开始,在X毫秒内,调用
    foo
你自己会怎么做?

我想你会,比如,启动一个秒表,时间为X毫秒,然后继续做你正在做的事情。当秒表归零时,你停止你所做的事情,做你需要做的事情。最后,继续你正在做的事情

什么阻碍了你?

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

  • 您需要了解如何在C中进行函数回调。请参阅“函数指针”
  • 您需要了解如何使用计时器,并在计时器达到零时执行某些操作
几次谷歌搜索可以帮你解决这两个问题。

你应该如何解决这个问题? 与所有问题一样:

  • 准确地弄清楚你想要做什么
  • 问问你自己,如果你需要的话(如果可以的话),你会怎么做
  • 尝试将前一步形式化,尽可能接近单个语句,一次一步
  • 找出阻碍你/你不知道如何做的事情。做一些研究
您想做的事情

您想“创建一个定时回调”。我认为这意味着:

  • 你有一个函数
    foo
    做一些工作
  • 你的程序正在运行
  • 您希望能够在程序中的任何位置说“从现在开始,在X毫秒内,调用
    foo
你自己会怎么做?

我想你会,比如,启动一个秒表,时间为X毫秒,然后继续做你正在做的事情。当秒表归零时,你停止你所做的事情,做你需要做的事情。最后,继续你正在做的事情

什么阻碍了你?

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

  • 您需要了解如何在C中进行函数回调。请参阅“函数指针”
  • 您需要了解如何使用计时器,并在计时器达到零时执行某些操作
几次谷歌搜索可以帮你解决这两个问题。

你应该如何解决这个问题? 与所有问题一样:

  • 准确地弄清楚你想要做什么
  • 问问你自己,如果你需要的话(如果可以的话),你会怎么做
  • 尝试将前一步形式化,尽可能接近单个语句,一次一步
  • 找出阻碍你/你不知道如何做的事情。做一些研究
您想做的事情

您想“创建一个定时回调”。我认为这意味着:

  • 你有一个函数
    foo
    做一些工作
  • 你的程序正在运行
  • 您希望能够在程序中的任何位置说“从现在开始,在X毫秒内,调用
    foo
你自己会怎么做?

我想你会,比如,启动一个秒表,时间为X毫秒,然后继续做你正在做的事情。当秒表归零时,你停止你所做的事情,做你需要做的事情。最后,继续你正在做的事情

什么阻碍了你?

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

  • 您需要了解如何在C中进行函数回调。请参阅“函数指针”
  • 你需要了解如何设置计时器,并在计时器到达时执行某些操作