mirror of
https://github.com/signalwire/freeswitch.git
synced 2025-08-13 17:38:59 +00:00
add detached thread abstraction.
git-svn-id: http://svn.openzap.org/svn/openzap/trunk@56 a93c3328-9c30-0410-af19-c9cd2b2d52af
This commit is contained in:
@@ -21,17 +21,19 @@
|
||||
#ifndef _ZAP_THREADMUTEX_H
|
||||
#define _ZAP_THREADMUTEX_H
|
||||
|
||||
typedef struct mutex mutex_t;
|
||||
#include "openzap.h"
|
||||
|
||||
typedef enum mutex_status {
|
||||
MUTEX_SUCCESS,
|
||||
MUTEX_FAILURE
|
||||
} mutex_status_t;
|
||||
typedef struct zap_mutex zap_mutex_t;
|
||||
typedef struct zap_thread zap_thread_t;
|
||||
typedef void *(*zap_thread_function_t) (zap_thread_t *, void *);
|
||||
|
||||
mutex_status_t zap_mutex_create(mutex_t **mutex);
|
||||
mutex_status_t zap_mutex_destroy(mutex_t *mutex);
|
||||
mutex_status_t zap_mutex_lock(mutex_t *mutex);
|
||||
mutex_status_t zap_mutex_trylock(mutex_t *mutex);
|
||||
mutex_status_t zap_mutex_unlock(mutex_t *mutex);
|
||||
zap_status_t zap_thread_create_detached(zap_thread_function_t func, void *data);
|
||||
zap_status_t zap_thread_create_detached_ex(zap_thread_function_t func, void *data, zap_size_t stack_size);
|
||||
void zap_thread_override_default_stacksize(zap_size_t size);
|
||||
zap_status_t zap_mutex_create(zap_mutex_t **mutex);
|
||||
zap_status_t zap_mutex_destroy(zap_mutex_t *mutex);
|
||||
zap_status_t zap_mutex_lock(zap_mutex_t *mutex);
|
||||
zap_status_t zap_mutex_trylock(zap_mutex_t *mutex);
|
||||
zap_status_t zap_mutex_unlock(zap_mutex_t *mutex);
|
||||
|
||||
#endif
|
||||
|
@@ -58,7 +58,10 @@ typedef enum {
|
||||
ZAP_SUCCESS,
|
||||
ZAP_FAIL,
|
||||
ZAP_MEMERR,
|
||||
ZAP_TIMEOUT
|
||||
ZAP_TIMEOUT,
|
||||
ZAP_NOTIMPL,
|
||||
|
||||
ZAP_STATUS_COUNT
|
||||
} zap_status_t;
|
||||
|
||||
typedef enum {
|
||||
@@ -91,7 +94,9 @@ typedef enum {
|
||||
ZAP_COMMAND_SET_DTMF_ON_PERIOD,
|
||||
ZAP_COMMAND_GET_DTMF_ON_PERIOD,
|
||||
ZAP_COMMAND_SET_DTMF_OFF_PERIOD,
|
||||
ZAP_COMMAND_GET_DTMF_OFF_PERIOD
|
||||
ZAP_COMMAND_GET_DTMF_OFF_PERIOD,
|
||||
|
||||
ZAP_COMMAND_COUNT
|
||||
} zap_command_t;
|
||||
|
||||
typedef enum {
|
||||
@@ -104,7 +109,9 @@ typedef enum {
|
||||
ZAP_CHAN_TYPE_DQ921,
|
||||
ZAP_CHAN_TYPE_DQ931,
|
||||
ZAP_CHAN_TYPE_FXS,
|
||||
ZAP_CHAN_TYPE_FXO
|
||||
ZAP_CHAN_TYPE_FXO,
|
||||
|
||||
ZAP_CHAN_TYPE_COUNT
|
||||
} zap_chan_type_t;
|
||||
|
||||
typedef enum {
|
||||
@@ -186,7 +193,9 @@ typedef zap_status_t (*zint_write_t) ZINT_WRITE_ARGS ;
|
||||
|
||||
typedef enum {
|
||||
ZAP_EVENT_NONE,
|
||||
ZAP_EVENT_DTMF
|
||||
ZAP_EVENT_DTMF,
|
||||
|
||||
ZAP_EVENT_COUNT
|
||||
} zap_event_type_t;
|
||||
|
||||
typedef struct zap_span zap_span_t;
|
||||
|
Reference in New Issue
Block a user