view src/core/ngx_garbage_collector.h @ 872:1c4a5b3f9110

Axe several perl interpreter instances: they may be useful in currently unsupported threaded environment, but now they complicate code: *) perl_clone() requires at least duplicating nginx stash; *) the multiplicity requires to re-evalute all precompiled subroutines and nginx stash in new interpreter context.
author Igor Sysoev <igor@sysoev.ru>
date Sun, 26 Nov 2006 14:35:27 +0000
parents 64d9afb209da
children
line wrap: on
line source


/*
 * Copyright (C) Igor Sysoev
 */


#ifndef _NGX_GARBAGE_COLLECTOR_H_INCLUDED_
#define _NGX_GARBAGE_COLLECTOR_H_INCLUDED_


typedef struct ngx_gc_s  ngx_gc_t;

typedef ngx_int_t (*ngx_gc_handler_pt) (ngx_gc_t *ctx, ngx_str_t *name,
    ngx_dir_t *dir);


struct ngx_gc_s {
    ngx_path_t         *path;
    u_int               deleted;
    off_t               freed;
    ngx_gc_handler_pt   handler;
    ngx_log_t          *log;
};


ngx_int_t ngx_collect_garbage(ngx_gc_t *ctx, ngx_str_t *dname, ngx_int_t level);
ngx_int_t ngx_garbage_collector_temp_handler(ngx_gc_t *ctx, ngx_str_t *name,
    ngx_dir_t *dir);


#endif /* _NGX_GARBAGE_COLLECTOR_H_INCLUDED_ */