Annotation of embedaddon/nginx/src/http/ngx_http_busy_lock.h, revision 1.1

1.1     ! misho       1: 
        !             2: /*
        !             3:  * Copyright (C) Igor Sysoev
        !             4:  * Copyright (C) Nginx, Inc.
        !             5:  */
        !             6: 
        !             7: 
        !             8: #ifndef _NGX_HTTP_BUSY_LOCK_H_INCLUDED_
        !             9: #define _NGX_HTTP_BUSY_LOCK_H_INCLUDED_
        !            10: 
        !            11: 
        !            12: #include <ngx_config.h>
        !            13: #include <ngx_core.h>
        !            14: #include <ngx_event.h>
        !            15: #include <ngx_http.h>
        !            16: 
        !            17: 
        !            18: typedef struct {
        !            19:     u_char             *md5_mask;
        !            20:     char               *md5;
        !            21:     int                 cacheable;
        !            22: 
        !            23:     int                 busy;
        !            24:     int                 max_busy;
        !            25: 
        !            26:     int                 waiting;
        !            27:     int                 max_waiting;
        !            28: 
        !            29:     time_t              timeout;
        !            30: 
        !            31:     ngx_event_mutex_t  *mutex;
        !            32: } ngx_http_busy_lock_t;
        !            33: 
        !            34: 
        !            35: typedef struct {
        !            36:     time_t         time;
        !            37:     ngx_event_t   *event;
        !            38:     void         (*event_handler)(ngx_event_t *ev);
        !            39:     u_char        *md5;
        !            40:     int            slot;
        !            41: } ngx_http_busy_lock_ctx_t;
        !            42: 
        !            43: 
        !            44: int ngx_http_busy_lock(ngx_http_busy_lock_t *bl, ngx_http_busy_lock_ctx_t *bc);
        !            45: int ngx_http_busy_lock_cacheable(ngx_http_busy_lock_t *bl,
        !            46:                                  ngx_http_busy_lock_ctx_t *bc, int lock);
        !            47: void ngx_http_busy_unlock(ngx_http_busy_lock_t *bl,
        !            48:                           ngx_http_busy_lock_ctx_t *bc);
        !            49: 
        !            50: char *ngx_http_set_busy_lock_slot(ngx_conf_t *cf, ngx_command_t *cmd,
        !            51:                                   void *conf);
        !            52: 
        !            53: 
        !            54: #endif /* _NGX_HTTP_BUSY_LOCK_H_INCLUDED_ */

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>