diff options
author | Russell Bryant <russell@russellbryant.com> | 2010-12-20 17:15:54 +0000 |
---|---|---|
committer | Russell Bryant <russell@russellbryant.com> | 2010-12-20 17:15:54 +0000 |
commit | cc0b7e7df540e5833c79c9b12ef880f03a74b922 (patch) | |
tree | d1049b4c6e02a7236e3a64c09f10633b99decc64 /channels/chan_unistim.c | |
parent | cf655aa1c9acabad60dcd9febd952de136b9838d (diff) |
Some scheduler API cleanup and improvements.
Previously, I had added the ast_sched_thread stuff that was a generic scheduler
thread implementation. However, if you used it, it required using different
functions for modifying scheduler contents. This patch reworks how this is
done and just allows you to optionally start a thread on the original scheduler
context structure that has always been there. This makes it trivial to switch
to the generic scheduler thread implementation without having to touch any of
the other code that adds or removes scheduler entries.
In passing, I made some naming tweaks to add ast_ prefixes where they were not
there before.
Review: https://reviewboard.asterisk.org/r/1007/
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@299091 65c4cc65-6c06-0410-ace0-fbb531ad65f3
Diffstat (limited to 'channels/chan_unistim.c')
-rw-r--r-- | channels/chan_unistim.c | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/channels/chan_unistim.c b/channels/chan_unistim.c index 3c307a682..155890250 100644 --- a/channels/chan_unistim.c +++ b/channels/chan_unistim.c @@ -217,7 +217,7 @@ static struct { } qos = { 0, 0, 0, 0 }; static struct io_context *io; -static struct sched_context *sched; +static struct ast_sched_context *sched; static struct sockaddr_in public_ip = { 0, }; /*! give the IP address for the last packet received */ static struct sockaddr_in address_from; @@ -5645,7 +5645,7 @@ int load_module(void) goto io_failed; } - sched = sched_context_create(); + sched = ast_sched_context_create(); if (!sched) { ast_log(LOG_ERROR, "Failed to allocate scheduler context\n"); goto sched_failed; @@ -5671,7 +5671,7 @@ int load_module(void) chanreg_failed: /*! XXX \todo Leaking anything allocated by reload_config() ... */ - sched_context_destroy(sched); + ast_sched_context_destroy(sched); sched = NULL; sched_failed: io_context_destroy(io); @@ -5686,8 +5686,9 @@ buff_failed: static int unload_module(void) { /* First, take us out of the channel loop */ - if (sched) - sched_context_destroy(sched); + if (sched) { + ast_sched_context_destroy(sched); + } ast_cli_unregister_multiple(unistim_cli, ARRAY_LEN(unistim_cli)); |