move devices from hints into an ao2_container

by splitting up devices from hints into an own ao2_container the callback to
get these devices for statechange handling is faster.
with this changes the length of a device used in a hint isnt longer restricted
to 80 characters.

Tests showed that calling handle_statechange is 40 times faster if no hints
are used and 25 times faster if there are any hints.

(closes issue #17928)
Reported by: mdu113
Tested by: schmidts

Review: https://reviewboard.asterisk.org/r/1003/



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@296752 65c4cc65-6c06-0410-ace0-fbb531ad65f3
This commit is contained in:
Stefan Schmidt
2010-11-30 09:49:25 +00:00
parent bd6f29dcb9
commit 1482ba3057
3 changed files with 339 additions and 152 deletions

View File

@@ -78,6 +78,7 @@ int __ast_fdleak_dup(int oldfd, const char *file, int line, const char *func);
int ast_set_priority(int); /*!< Provided by asterisk.c */
int ast_fd_init(void); /*!< Provided by astfd.c */
int ast_pbx_init(void); /*!< Provided by pbx.c */
/*!
* \brief Register a function to be executed before Asterisk exits.