[asterisk-dev] [Code Review] 3199: scheduler: Remove hashtab usage.

Joshua Colp reviewboard at asterisk.org
Sat Feb 8 17:54:37 CST 2014

This is an automatically generated e-mail. To reply, visit:

(Updated Feb. 8, 2014, 11:54 p.m.)

Review request for Asterisk Developers.


Reduced duplicated logic per feedback.

Repository: Asterisk


The scheduler currently stores scheduled items in two ways: a hashtab and a heap. The heap is used for actually scheduling while the hashtab is used for fast retrieval under certain circumstances. In practice having the hashtab comes at a cost under normal use. Each time something is scheduled two memory allocations occur: one for the scheduled item itself and one for the hashtab. Each time something is rescheduled the hashtab entry is freed and allocated yet again. If you have a scheduled item which is rescheduled over and over this can be substantial.

This change removes the hashtab usage and uses the heap for finding things.

Diffs (updated)

  /trunk/main/sched.c 407748 

Diff: https://reviewboard.asterisk.org/r/3199/diff/


Ran scheduler unit test and also forced the scheduler to get used for Playback.


Joshua Colp

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.digium.com/pipermail/asterisk-dev/attachments/20140208/8563c71e/attachment.html>

More information about the asterisk-dev mailing list