src/http/modules/mxcache/ngx_connection_pool.h File Reference

Go to the source code of this file.

Data Structures

struct  ngx_connection_pool_s
 Structure containing connection pool specyfic data, returned by ngx_connection_pool_create. More...
struct  ngx_pooled_connection_s
 Structure containing single connection pooled. More...

Typedefs

typedef typedef struct
ngx_connection_pool_s 
ngx_connection_pool_t
typedef struct
ngx_pooled_connection_s 
ngx_pooled_connection_t

Functions

ngx_connection_pool_tngx_connection_pool_create (ngx_log_t *_log, struct sockaddr_in *_sockaddr, ngx_uint_t _sockaddr_size, ngx_uint_t _stored_connections_limit)
 Creates new pool.
ngx_int_t ngx_connection_pool_get (ngx_connection_pool_t *pool, ngx_pooled_connection_t **new_connection, ngx_int_t force_new)
 Fetchs connection from pool.
void ngx_connection_pool_return (ngx_pooled_connection_t *connection)
 Returns connection to pool.
void ngx_connection_pool_release (ngx_pooled_connection_t *connection)
 Frees connection without returning it to pool.

Typedef Documentation

typedef typedef struct ngx_connection_pool_s ngx_connection_pool_t

Definition at line 23 of file ngx_connection_pool.h.

Definition at line 24 of file ngx_connection_pool.h.


Function Documentation

ngx_connection_pool_t* ngx_connection_pool_create ( ngx_log_t *  _log,
struct sockaddr_in *  _sockaddr,
ngx_uint_t  _sockaddr_size,
ngx_uint_t  _stored_connections_limit 
)

Creates new pool.

Parameters:
[in] _log used to log errors, passed as log parameter when creating new connections
[in] _sockaddr sockaddr structure used by connect
[in] _sockaddr_size size of _sockaddr
[in] _stored_connections_limit Limit for count of connection created. If more connection are needed NGX_ERROR is returned
Returns:
new connection structure

Definition at line 40 of file ngx_connection_pool.c.

References ngx_connecton_pool_pcounter.

Referenced by ngx_http_mxcache_merge_conf().

ngx_int_t ngx_connection_pool_get ( ngx_connection_pool_t pool,
ngx_pooled_connection_t **  new_connection,
ngx_int_t  force_new 
)

Fetchs connection from pool.

Parameters:
[in] pool pool from which connection will be fetched
[out] new_connection pointer where to store new connection
[in] force_new if set to 1, new connection will always be created (even if there are some connections stored)
Returns:
error code (NGX_OK or NGX_ERROR)

Definition at line 200 of file ngx_connection_pool.c.

References ngx_connection_pool_get_new(), ngx_connection_pool_release(), and ngx_connection_pool_strip_broken().

Referenced by ngx_http_mxcache_init_conn().

void ngx_connection_pool_release ( ngx_pooled_connection_t connection  ) 

Frees connection without returning it to pool.

Must be used if connection has already failed. Do not return broken connections to pool.

Parameters:
[in] connection pool connection to be freed.

Definition at line 445 of file ngx_connection_pool.c.

References ngx_pooled_connection_s::connection, ngx_pooled_connection_s::owner_pool, and ngx_pooled_connection_s::pool.

Referenced by ngx_connection_pool_get(), ngx_connection_pool_return(), and ngx_http_mxcache_finalize_connection().

void ngx_connection_pool_return ( ngx_pooled_connection_t connection  ) 

Returns connection to pool.

It will be released from ngix structures

Parameters:
[in] connection pool connection to return to pool.

Definition at line 329 of file ngx_connection_pool.c.

References ngx_pooled_connection_s::connection, ngx_pooled_connection_s::data, ngx_pooled_connection_s::fd, ngx_pooled_connection_s::next, ngx_connection_pool_release(), ngx_pooled_connection_s::owner_pool, and ngx_pooled_connection_s::previous.

Referenced by ngx_http_mxcache_finalize_connection().


Generated on Mon Oct 12 14:03:36 2009 for XXSLT by  doxygen 1.6.1