GRPC Core 0.10.0.0

- Main Page
- Data Structures
- Files

- File List
- Globals

All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
Data Structures | Macros | Typedefs | Functions
stack_lockfree.c File Reference
`#include "src/core/support/stack_lockfree.h"`
`#include <stdlib.h>`
`#include <string.h>`
`#include <grpc/support/port_platform.h>`
`#include <grpc/support/alloc.h>`
`#include <grpc/support/atm.h>`
`#include <grpc/support/log.h>`

## Data Structures
struct | lockfree_node_contents
union | lockfree_node
struct | gpr_stack_lockfree

## Macros
#define | ENTRY_ALIGNMENT_BITS 3 /* make sure that entries aligned to 8-bytes */
#define | INVALID_ENTRY_INDEX

## Typedefs
typedef union lockfree_node | lockfree_node

## Functions
gpr_stack_lockfree * | gpr_stack_lockfree_create (int entries)
void | gpr_stack_lockfree_destroy (gpr_stack_lockfree *stack)
int | gpr_stack_lockfree_push (gpr_stack_lockfree *stack, int entry)
int | gpr_stack_lockfree_pop (gpr_stack_lockfree *stack)

## Macro Definition Documentation

#define ENTRY_ALIGNMENT_BITS 3 /* make sure that entries aligned to 8-bytes */

#define INVALID_ENTRY_INDEX

Value:
((1 << 16) - 1) /* reserve this entry as invalid \
*/

## Typedef Documentation

typedef union lockfree_node lockfree_node

## Function Documentation

gpr_stack_lockfree* gpr_stack_lockfree_create | ( | int | entries | ) |

void gpr_stack_lockfree_destroy | ( | gpr_stack_lockfree * | stack | ) |

int gpr_stack_lockfree_pop | ( | gpr_stack_lockfree * | stack | ) |

int gpr_stack_lockfree_push | ( | gpr_stack_lockfree * | stack,
|  | int | entry
| ) |  |