forward.h
Go to the documentation of this file.
1 /*
2  * Copyright (C) 1996-2023 The Squid Software Foundation and contributors
3  *
4  * Squid software is distributed under GPLv2+ license and includes
5  * contributions from numerous individuals and organizations.
6  * Please see the COPYING and CONTRIBUTORS files for details.
7  */
8 
9 /* DEBUG: section 13 High Level Memory Pool Management */
10 
11 #ifndef SQUID_SRC_MEM_FORWARD_H
12 #define SQUID_SRC_MEM_FORWARD_H
13 
14 #include "mem/AllocatorProxy.h"
15 
16 #include <iosfwd>
17 
18 class StoreEntry;
19 
21 namespace Mem
22 {
23 class Meter;
24 class PoolMeter;
25 class PoolStats;
26 
27 void Init();
28 void Stats(StoreEntry *);
29 void CleanIdlePools(void *unused);
30 void Report(std::ostream &);
31 void PoolReport(const PoolStats *, const PoolMeter *, std::ostream &);
32 };
33 
34 extern const size_t squidSystemPageSize;
35 
37 typedef void FREE(void *);
38 
40 typedef enum {
56 } mem_type;
57 
59 void memClean(void);
60 void memInitModule(void);
61 void memCleanModule(void);
62 void memConfigure(void);
64 void *memAllocate(mem_type);
65 void *memAllocBuf(size_t net_size, size_t * gross_size);
66 void *memReallocBuf(void *buf, size_t net_size, size_t * gross_size);
68 void memFree(void *, int type);
69 void memFreeBuf(size_t size, void *);
70 FREE *memFreeBufFunc(size_t size);
71 int memInUse(mem_type);
72 
73 #endif /* SQUID_SRC_MEM_FORWARD_H */
74 
@ MEM_64K_BUF
Definition: forward.h:53
void memClean(void)
Main cleanup handler.
Definition: old_api.cc:328
@ MEM_512B_BUF
Definition: forward.h:46
void FREE(void *)
Definition: forward.h:37
FREE * memFreeBufFunc(size_t size)
Definition: minimal.cc:79
void PoolReport(const PoolStats *, const PoolMeter *, std::ostream &)
Definition: old_api.cc:478
void * memAllocBuf(size_t net_size, size_t *gross_size)
Definition: minimal.cc:46
mem_type
Types of memory pool which do not yet use MEMPROXY_CLASS() API.
Definition: forward.h:40
@ MEM_MD5_DIGEST
Definition: forward.h:54
@ MEM_128B_BUF
Definition: forward.h:44
void * memAllocate(mem_type)
Allocate one element from the typed pool.
Definition: old_api.cc:122
@ MEM_32B_BUF
Definition: forward.h:42
void Report(std::ostream &)
Definition: old_api.cc:548
void memCleanModule(void)
Memory Management.
Definition: Allocator.h:16
void Stats(StoreEntry *)
Definition: old_api.cc:77
@ MEM_256B_BUF
Definition: forward.h:45
int size
Definition: ModDevPoll.cc:69
void memConfigure(void)
Definition: old_api.cc:254
int memInUse(mem_type)
Definition: old_api.cc:344
@ MEM_NONE
Definition: forward.h:41
@ MEM_64B_BUF
Definition: forward.h:43
const size_t squidSystemPageSize
@ MEM_16K_BUF
Definition: forward.h:51
@ MEM_32K_BUF
Definition: forward.h:52
@ MEM_4K_BUF
Definition: forward.h:49
void * memReallocBuf(void *buf, size_t net_size, size_t *gross_size)
Definition: minimal.cc:54
@ MEM_8K_BUF
Definition: forward.h:50
void memInitModule(void)
void memFree(void *, int type)
Free a element allocated by memAllocate()
Definition: minimal.cc:61
void Init()
Definition: old_api.cc:281
@ MEM_MAX
Definition: forward.h:55
void CleanIdlePools(void *unused)
Definition: old_api.cc:247
@ MEM_1K_BUF
Definition: forward.h:47
@ MEM_2K_BUF
Definition: forward.h:48
void memFreeBuf(size_t size, void *)
Definition: minimal.cc:67

 

Introduction

Documentation

Support

Miscellaneous