OpenSDN source code
|
#include <flow_table.h>
Public Types | |
typedef boost::intrusive::member_hook < FlowEntry, boost::intrusive::list_member_hook <>,&FlowEntry::free_list_node_ > | Node |
typedef boost::intrusive::list < FlowEntry, Node > | FreeList |
Public Member Functions | |
FlowEntryFreeList (FlowTable *table) | |
virtual | ~FlowEntryFreeList () |
FlowEntry * | Allocate (const FlowKey &key) |
void | Free (FlowEntry *flow) |
void | Grow () |
uint32_t | max_count () const |
uint32_t | free_count () const |
uint32_t | alloc_count () const |
uint32_t | total_alloc () const |
uint32_t | total_free () const |
Static Public Attributes | |
static const uint32_t | kInitCount = (25 * 1000) |
static const uint32_t | kTestInitCount = (5 * 1000) |
static const uint32_t | kGrowSize = (1 * 1000) |
static const uint32_t | kMinThreshold = (4 * 1000) |
static const uint32_t | kMaxThreshold = (100 * 1000) |
Private Member Functions | |
DISALLOW_COPY_AND_ASSIGN (FlowEntryFreeList) | |
Private Attributes | |
FlowTable * | table_ |
uint32_t | max_count_ |
bool | grow_pending_ |
uint64_t | total_alloc_ |
uint64_t | total_free_ |
FreeList | free_list_ |
Definition at line 90 of file flow_table.h.
typedef boost::intrusive::list<FlowEntry, Node> FlowEntryFreeList::FreeList |
Definition at line 101 of file flow_table.h.
typedef boost::intrusive::member_hook<FlowEntry, boost::intrusive::list_member_hook<>, &FlowEntry::free_list_node_> FlowEntryFreeList::Node |
Definition at line 100 of file flow_table.h.
FlowEntryFreeList::FlowEntryFreeList | ( | FlowTable * | table | ) |
|
virtual |
Definition at line 979 of file flow_table.cc.
|
inline |
Definition at line 111 of file flow_table.h.
|
private |
void FlowEntryFreeList::Free | ( | FlowEntry * | flow | ) |
|
inline |
Definition at line 110 of file flow_table.h.
void FlowEntryFreeList::Grow | ( | ) |
|
inline |
Definition at line 109 of file flow_table.h.
|
inline |
Definition at line 112 of file flow_table.h.
|
inline |
Definition at line 113 of file flow_table.h.
|
private |
Definition at line 120 of file flow_table.h.
|
private |
Definition at line 117 of file flow_table.h.
|
static |
Definition at line 94 of file flow_table.h.
|
static |
Definition at line 92 of file flow_table.h.
|
static |
Definition at line 96 of file flow_table.h.
|
static |
Definition at line 95 of file flow_table.h.
|
static |
Definition at line 93 of file flow_table.h.
|
private |
Definition at line 116 of file flow_table.h.
|
private |
Definition at line 115 of file flow_table.h.
|
private |
Definition at line 118 of file flow_table.h.
|
private |
Definition at line 119 of file flow_table.h.