【问题标题】:timer thread in c using SIGALRM使用 SIGALRM 的 c 中的计时器线程
【发布时间】:2014-02-21 07:55:57
【问题描述】:

我是新手。我需要在 C 中实现一个计时器线程。超时时,它必须转到另一个线程/函数来执行某些活动。谁能帮我用 SIGALRM 实现它?如果有人能在这里留下一些例子就好了。

【问题讨论】:

  • 欢迎来到 Stack Overflow!看起来您希望我们为您编写一些代码。虽然许多用户愿意为陷入困境的编码人员编写代码,但他们通常只有在发布者已经尝试自己解决问题时才会提供帮助。展示这项工作的一个好方法是包含您迄今为止编写的代码、示例输入(如果有的话)、预期输出和您实际获得的输出(控制台输出、堆栈跟踪、编译器错误 - 不管是什么适用的)。您提供的详细信息越多,您可能收到的答案就越多。
  • @kkuilla 我不需要你为我编写代码。我只是希望有人告诉我是否有办法做到这一点。如果是,它是如何工作的。谢谢你的cmets。我会记住它们以供进一步讨论。
  • @alk 非常感谢...这很有用...
  • 另外还有timer_create 系列函数。它们比itimer 稍微复杂一些,但可以更轻松地将信号指向特定线程,或者在计时器关闭时实际启动线程以执行功能。

标签: c timer pthreads signals alarm


【解决方案1】:

signal(SIGALRM, TR69_DM_SignalHandler); alarm(PassedFromCaller->TimeOut); pause();

我发现这个工作.. 但是有什么办法可以避免暂停语句? 我希望我的线程继续其工作。我应该在另一个线程中单独发出警报吗?

【讨论】:

    【解决方案2】:

    伙计,我认为没有人会帮助你,除非你生成一些代码.. 无论如何,作为教程的一部分链接 ..阅读它..

    http://www.qnx.com/developers/docs/6.4.1/neutrino/getting_started/s1_timer.html

    【讨论】:

    • 这将有套件更好地作为评论。
    猜你喜欢
    • 2011-02-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-08-05
    • 2021-09-25
    • 1970-01-01
    • 2018-02-21
    • 1970-01-01
    相关资源
    最近更新 更多