Efficient Timer Algorithm

前端 未结 3 610
無奈伤痛
無奈伤痛 2021-02-04 16:04

What is the best algorithm to implement a simple timer library. The library should allow the following:

  1. Timers to be started
  2. Timers to be stopped
相关标签:
3条回答
  • 2021-02-04 16:30

    On POSIX-ish systems, you can use the timer_create/timer_settime family of functions to provide a lot of this "for free."

    0 讨论(0)
  • 2021-02-04 16:31

    Timers are typically best implemented in an operating system kernel, at the assembly/C level, making use of platform-specific features like APIC timers wherever possible.

    You might like to look at http://lwn.net/Articles/167897/ for details on the Linux implementation, and dig through the Linux source code to see working implementations.

    0 讨论(0)
  • 2021-02-04 16:46

    Best algorithm I have seen for timers is a timer wheel found in the research paper Hashed and Hierarchical Timing Wheels: Data Structures for the Efficient Implementation of a Timer Facility

    I know in Java there is an implementation with Netty, JBoss and I am sure elsewhere too that you can use, if you are writing in Java.

    0 讨论(0)
提交回复
热议问题