upstream nginx-0.7.31
[nginx.git] / nginx / src / core / ngx_garbage_collector.h
1
2 /*
3  * Copyright (C) Igor Sysoev
4  */
5
6
7 #ifndef _NGX_GARBAGE_COLLECTOR_H_INCLUDED_
8 #define _NGX_GARBAGE_COLLECTOR_H_INCLUDED_
9
10
11 typedef struct ngx_gc_s  ngx_gc_t;
12
13 typedef ngx_int_t (*ngx_gc_handler_pt) (ngx_gc_t *ctx, ngx_str_t *name,
14     ngx_dir_t *dir);
15
16
17 struct ngx_gc_s {
18     ngx_path_t         *path;
19     u_int               deleted;
20     off_t               freed;
21     ngx_gc_handler_pt   handler;
22     ngx_log_t          *log;
23 };
24
25
26 ngx_int_t ngx_collect_garbage(ngx_gc_t *ctx, ngx_str_t *dname, ngx_int_t level);
27 ngx_int_t ngx_garbage_collector_temp_handler(ngx_gc_t *ctx, ngx_str_t *name,
28     ngx_dir_t *dir);
29
30
31 #endif /* _NGX_GARBAGE_COLLECTOR_H_INCLUDED_ */