async_task.h
02ca141b
 /*
9467ebbf
  * Copyright (C) 2014 Daniel-Constantin Mierla (asipto.com)
  *
02ca141b
  * This file is part of Kamailio, a free SIP server.
9467ebbf
  *
  * Permission to use, copy, modify, and distribute this software for any
  * purpose with or without fee is hereby granted, provided that the above
  * copyright notice and this permission notice appear in all copies.
  *
  * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
  * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
  * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
  * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
  * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
  * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
  * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
  */
 
02ca141b
 /** Kamailio core :: Aync tasks
  * @ingroup core
  * Module: core
  */
9467ebbf
 
 #ifndef _ASYNC_TASK_H_
 #define _ASYNC_TASK_H_
 
 typedef void (*async_cbe_t)(void *p);
 
 typedef struct _async_task {
 	async_cbe_t exec;
 	void *param;
 } async_task_t;
 
 int async_task_init(void);
 int async_task_child_init(int rank);
 int async_task_initialized(void);
 int async_task_set_workers(int n);
 int async_task_push(async_task_t *task);
 
 #endif