-
- Downloads
Merge team/russell/frame_caching
There are some situations in Asterisk where ast_frame and/or iax_frame structures are rapidly allocatted and freed (at least 50 times per second for one call). This code significantly improves the performance of ast_frame_header_new(), ast_frdup(), ast_frfree(), iax_frame_new(), and iax_frame_free() by keeping a thread-local cache of these structures and using frames from the cache whenever possible instead of calling malloc/free every time. This commit also converts the ast_frame and iax_frame structures to use the linked list macros. git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@41278 65c4cc65-6c06-0410-ace0-fbb531ad65f3
Showing
- apps/app_milliwatt.c 7 additions, 10 deletionsapps/app_milliwatt.c
- apps/app_mixmonitor.c 1 addition, 1 deletionapps/app_mixmonitor.c
- channels/chan_iax2.c 58 additions, 84 deletionschannels/chan_iax2.c
- channels/chan_local.c 2 additions, 2 deletionschannels/chan_local.c
- channels/chan_zap.c 0 additions, 3 deletionschannels/chan_zap.c
- channels/iax2-parser.c 70 additions, 12 deletionschannels/iax2-parser.c
- channels/iax2-parser.h 5 additions, 2 deletionschannels/iax2-parser.h
- include/asterisk/channel.h 1 addition, 1 deletioninclude/asterisk/channel.h
- include/asterisk/chanspy.h 1 addition, 1 deletioninclude/asterisk/chanspy.h
- include/asterisk/frame.h 5 additions, 4 deletionsinclude/asterisk/frame.h
- include/asterisk/slinfactory.h 1 addition, 1 deletioninclude/asterisk/slinfactory.h
- main/abstract_jb.c 1 addition, 4 deletionsmain/abstract_jb.c
- main/channel.c 63 additions, 94 deletionsmain/channel.c
- main/frame.c 112 additions, 60 deletionsmain/frame.c
- main/slinfactory.c 5 additions, 12 deletionsmain/slinfactory.c
- main/udptl.c 13 additions, 22 deletionsmain/udptl.c
Loading
Please register or sign in to comment