Groonga 3.0.9 Source Code Document
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
Data Structures | Macros | Typedefs | Functions | Variables
ngx_freebsd_rfork_thread.h File Reference
#include <sys/ipc.h>
#include <sys/sem.h>
#include <sched.h>
Include dependency graph for ngx_freebsd_rfork_thread.h:

Go to the source code of this file.

Data Structures

struct  ngx_mutex_t
struct  ngx_cond_t

Macros

#define ngx_log_pid   ngx_thread_self()
#define ngx_log_tid   0
#define NGX_TID_T_FMT   "%P"
#define NGX_MUTEX_LIGHT   1
#define NGX_MUTEX_LOCK_BUSY   0x80000000
#define NGX_CV_SIGNAL   64
#define ngx_thread_sigmask(how, set, oset)   (sigprocmask(how, set, oset) == -1) ? ngx_errno : 0
#define ngx_thread_sigmask_n   "sigprocmask()"
#define ngx_thread_join(t, p)
#define ngx_setthrtitle(n)   setproctitle(n)
#define NGX_THREAD_KEYS_MAX   16
#define ngx_thread_key_create_n   "the tls key creation"
#define ngx_thread_set_tls_n   "the tls key setting"
#define ngx_mutex_trylock(m)   ngx_mutex_dolock(m, 1)
#define ngx_mutex_lock(m)   (void) ngx_mutex_dolock(m, 0)

Typedefs

typedef pid_t ngx_tid_t
typedef ngx_uint_t ngx_tls_key_t
typedef int(* ngx_rfork_thread_func_pt )(void *arg)

Functions

ngx_tid_t ngx_thread_self ()
ngx_err_t ngx_thread_key_create (ngx_tls_key_t *key)
ngx_err_t ngx_thread_set_tls (ngx_tls_key_t key, void *value)
ngx_int_t ngx_mutex_dolock (ngx_mutex_t *m, ngx_int_t try)
void ngx_mutex_unlock (ngx_mutex_t *m)

Variables

char * ngx_freebsd_kern_usrstack
size_t ngx_thread_stack_size
void ** ngx_tls

Macro Definition Documentation

#define NGX_CV_SIGNAL   64

Definition at line 35 of file ngx_freebsd_rfork_thread.h.

#define ngx_log_pid   ngx_thread_self()

Definition at line 18 of file ngx_freebsd_rfork_thread.h.

#define ngx_log_tid   0

Definition at line 19 of file ngx_freebsd_rfork_thread.h.

#define NGX_MUTEX_LIGHT   1

Definition at line 24 of file ngx_freebsd_rfork_thread.h.

#define ngx_mutex_lock (   m)    (void) ngx_mutex_dolock(m, 0)

Definition at line 114 of file ngx_freebsd_rfork_thread.h.

#define NGX_MUTEX_LOCK_BUSY   0x80000000

Definition at line 26 of file ngx_freebsd_rfork_thread.h.

#define ngx_mutex_trylock (   m)    ngx_mutex_dolock(m, 1)

Definition at line 113 of file ngx_freebsd_rfork_thread.h.

#define ngx_setthrtitle (   n)    setproctitle(n)

Definition at line 52 of file ngx_freebsd_rfork_thread.h.

#define ngx_thread_join (   t,
 
)

Definition at line 50 of file ngx_freebsd_rfork_thread.h.

#define ngx_thread_key_create_n   "the tls key creation"

Definition at line 96 of file ngx_freebsd_rfork_thread.h.

#define NGX_THREAD_KEYS_MAX   16

Definition at line 91 of file ngx_freebsd_rfork_thread.h.

#define ngx_thread_set_tls_n   "the tls key setting"

Definition at line 99 of file ngx_freebsd_rfork_thread.h.

#define ngx_thread_sigmask (   how,
  set,
  oset 
)    (sigprocmask(how, set, oset) == -1) ? ngx_errno : 0

Definition at line 45 of file ngx_freebsd_rfork_thread.h.

#define ngx_thread_sigmask_n   "sigprocmask()"

Definition at line 48 of file ngx_freebsd_rfork_thread.h.

#define NGX_TID_T_FMT   "%P"

Definition at line 21 of file ngx_freebsd_rfork_thread.h.

Typedef Documentation

typedef int(* ngx_rfork_thread_func_pt)(void *arg)

Definition at line 119 of file ngx_freebsd_rfork_thread.h.

typedef pid_t ngx_tid_t

Definition at line 16 of file ngx_freebsd_rfork_thread.h.

Definition at line 89 of file ngx_freebsd_rfork_thread.h.

Function Documentation

ngx_int_t ngx_mutex_dolock ( ngx_mutex_t m,
ngx_int_t  try 
)

Definition at line 368 of file ngx_freebsd_rfork_thread.c.

Here is the call graph for this function:

void ngx_mutex_unlock ( ngx_mutex_t m)

Definition at line 499 of file ngx_freebsd_rfork_thread.c.

Here is the call graph for this function:

ngx_err_t ngx_thread_key_create ( ngx_tls_key_t key)

Definition at line 289 of file ngx_freebsd_rfork_thread.c.

ngx_tid_t ngx_thread_self ( )

Definition at line 274 of file ngx_freebsd_rfork_thread.c.

Here is the caller graph for this function:

ngx_err_t ngx_thread_set_tls ( ngx_tls_key_t  key,
void *  value 
)

Definition at line 302 of file ngx_freebsd_rfork_thread.c.

Variable Documentation

char* ngx_freebsd_kern_usrstack

Definition at line 35 of file ngx_freebsd_rfork_thread.c.

size_t ngx_thread_stack_size

Definition at line 36 of file ngx_freebsd_rfork_thread.c.

void** ngx_tls

Definition at line 48 of file ngx_freebsd_rfork_thread.c.