|
ascii-chat 0.6.0
Real-time terminal-based video chat with ASCII art conversion
|
Node header embedded before user data. More...
#include <lib/buffer_pool.h>
Public Member Functions | |
| _Atomic (struct buffer_node *) next | |
| Next in free list (atomic for lock-free) | |
| _Atomic (uint64_t) returned_at_ms | |
| Timestamp when returned to free list. | |
Data Fields | |
| uint32_t | magic |
| Magic to identify pooled buffers. | |
| uint32_t | _pad |
| Padding for alignment. | |
| size_t | size |
| Size of user data portion. | |
| struct buffer_pool * | pool |
| Owning pool (for free) | |
Node header embedded before user data.
Layout in memory: [buffer_node_t header][user data...] ^– pointer returned to caller
Definition at line 76 of file buffer_pool.h.
| buffer_node::_Atomic | ( | struct buffer_node * | ) |
Next in free list (atomic for lock-free)
| buffer_node::_Atomic | ( | uint64_t | ) |
Timestamp when returned to free list.
| uint32_t buffer_node::_pad |
Padding for alignment.
Definition at line 78 of file buffer_pool.h.
Referenced by buffer_pool_alloc().
| uint32_t buffer_node::magic |
Magic to identify pooled buffers.
Definition at line 77 of file buffer_pool.h.
Referenced by buffer_pool_alloc(), and buffer_pool_free().
| struct buffer_pool* buffer_node::pool |
Owning pool (for free)
Definition at line 82 of file buffer_pool.h.
Referenced by buffer_pool_alloc(), and buffer_pool_free().
| size_t buffer_node::size |
Size of user data portion.
Definition at line 79 of file buffer_pool.h.
Referenced by buffer_pool_alloc(), buffer_pool_free(), and buffer_pool_shrink().