mirror of
https://github.com/signalwire/freeswitch.git
synced 2025-04-13 15:50:59 +00:00
performance tweaks
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@2298 d0543943-73ff-0310-b7d9-9358b9ac24b2
This commit is contained in:
parent
f9cbbca041
commit
a675393bb7
@ -86,7 +86,7 @@ struct switch_directories {
|
||||
typedef struct switch_directories switch_directories;
|
||||
SWITCH_DECLARE_DATA extern switch_directories SWITCH_GLOBAL_dirs;
|
||||
|
||||
#define SWITCH_THREAD_STACKSIZE 512 * 1024
|
||||
#define SWITCH_THREAD_STACKSIZE 384 * 1024
|
||||
#define SWITCH_RECCOMMENDED_BUFFER_SIZE 2048
|
||||
#define SWITCH_MAX_CODECS 30
|
||||
#define SWITCH_MAX_STATE_HANDLERS 30
|
||||
|
@ -225,5 +225,7 @@ int main(int argc, char *argv[])
|
||||
switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_CONSOLE, "Tearing down environment.\n");
|
||||
switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_CONSOLE, "Exiting Now.\n");
|
||||
switch_core_destroy();
|
||||
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
@ -3118,7 +3118,7 @@ SWITCH_DECLARE(switch_status_t) switch_core_destroy(void)
|
||||
|
||||
switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_CONSOLE, "Closing Event Engine.\n");
|
||||
switch_event_shutdown();
|
||||
switch_log_shutdown();
|
||||
|
||||
|
||||
switch_queue_push(runtime.sql_queue, NULL);
|
||||
switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_CONSOLE, "Waiting for unfinished SQL transactions\n");
|
||||
@ -3128,7 +3128,8 @@ SWITCH_DECLARE(switch_status_t) switch_core_destroy(void)
|
||||
switch_core_db_close(runtime.db);
|
||||
switch_core_db_close(runtime.event_db);
|
||||
switch_xml_destroy();
|
||||
|
||||
switch_log_shutdown();
|
||||
switch_yield(10000);
|
||||
if (runtime.memory_pool) {
|
||||
switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_CONSOLE, "Unallocating memory pool.\n");
|
||||
apr_pool_destroy(runtime.memory_pool);
|
||||
|
@ -118,7 +118,7 @@ static void *SWITCH_THREAD_FUNC log_thread(switch_thread_t *thread, void *obj)
|
||||
assert(obj == NULL || obj != NULL);
|
||||
THREAD_RUNNING = 1;
|
||||
|
||||
for(;;) {
|
||||
while(LOG_QUEUE) {
|
||||
void *pop = NULL;
|
||||
switch_log_node_t *node = NULL;
|
||||
switch_log_binding_t *binding;
|
||||
@ -128,6 +128,7 @@ static void *SWITCH_THREAD_FUNC log_thread(switch_thread_t *thread, void *obj)
|
||||
}
|
||||
|
||||
if (!pop) {
|
||||
LOG_QUEUE = NULL;
|
||||
break;
|
||||
}
|
||||
|
||||
@ -222,23 +223,23 @@ SWITCH_DECLARE(void) switch_log_printf(switch_text_channel_t channel, char *file
|
||||
switch_event_fire(&event);
|
||||
}
|
||||
} else {
|
||||
if (level == SWITCH_LOG_CONSOLE || !THREAD_RUNNING) {
|
||||
if (level == SWITCH_LOG_CONSOLE || !LOG_QUEUE || !THREAD_RUNNING) {
|
||||
fprintf(handle, data);
|
||||
}
|
||||
|
||||
if (level <= MAX_LEVEL) {
|
||||
switch_log_node_t *node = malloc(sizeof(*node));
|
||||
node->data = data;
|
||||
node->file = strdup(filep);
|
||||
node->func = strdup(func);
|
||||
node->line = line;
|
||||
node->level = level;
|
||||
node->content = content;
|
||||
node->timestamp = now;
|
||||
switch_queue_push(LOG_QUEUE, node);
|
||||
} else {
|
||||
free(data);
|
||||
}
|
||||
} else if (level <= MAX_LEVEL) {
|
||||
switch_log_node_t *node;
|
||||
|
||||
if ((node = malloc(sizeof(*node)))) {
|
||||
node->data = data;
|
||||
node->file = strdup(filep);
|
||||
node->func = strdup(func);
|
||||
node->line = line;
|
||||
node->level = level;
|
||||
node->content = content;
|
||||
node->timestamp = now;
|
||||
switch_queue_push(LOG_QUEUE, node);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user