Go to the documentation of this file.
46 if (pq->
timers[
i] == el)
return 1;
54 size_t left_child = 1
u + 2
u *
i;
55 size_t right_child = left_child + 1
u;
56 if (left_child < pq->timer_count) {
59 if (right_child < pq->timer_count) {
71 const size_t num_test_elements = 200;
72 const size_t num_test_operations = 10000;
80 memset(inpq, 0, num_test_elements);
83 for (
i = 0;
i < num_test_elements; ++
i) {
90 for (
i = 0;
i < num_test_elements; ++
i) {
100 for (
i = 0;
i < num_test_operations; ++
i) {
101 size_t elem_num =
static_cast<size_t>(rand()) % num_test_elements;
103 if (!inpq[elem_num]) {
135 size_t* search_order =
137 for (
size_t i = 0;
i <
count;
i++) {
140 for (
size_t i = 0;
i <
count * 2;
i++) {
141 size_t a =
static_cast<size_t>(rand()) %
count;
142 size_t b =
static_cast<size_t>(rand()) %
count;
146 for (
size_t i = 0;
out ==
nullptr &&
i <
count;
i++) {
148 out = &elems[search_order[
i]];
160 static const size_t elems_size = 1000;
163 size_t num_inserted = 0;
166 memset(elems, 0, elems_size *
sizeof(elems[0]));
169 int r = rand() % 1000;
180 }
else if (
r <= 650) {
191 if (num_inserted > 0) {
194 for (
size_t i = 0;
i < elems_size;
i++) {
206 int64_t* min_deadline =
nullptr;
207 for (
size_t i = 0;
i < elems_size;
i++) {
209 if (min_deadline ==
nullptr) {
212 if (elems[
i].
elem.deadline < *min_deadline) {
231 size_t expected_size;
234 const size_t num_elements =
static_cast<size_t>(rand()) % 2000 + 512;
285 int main(
int argc,
char** argv) {
290 for (
i = 0;
i < 5;
i++) {
int main(int argc, char **argv)
return memset(p, 0, total)
void grpc_timer_heap_remove(grpc_timer_heap *heap, grpc_timer *timer)
GPRAPI void gpr_free(void *ptr)
GPRAPI void * gpr_malloc(size_t size)
OPENSSL_EXPORT pem_password_cb void * u
static size_t num_elements(const uint8_t *in, size_t in_len)
void grpc_timer_heap_destroy(grpc_timer_heap *heap)
bool grpc_timer_heap_add(grpc_timer_heap *heap, grpc_timer *timer)
static elem_struct * search_elems(elem_struct *elems, size_t count, bool inserted)
GPRAPI void gpr_log(const char *file, int line, gpr_log_severity severity, const char *format,...) GPR_PRINT_FORMAT_CHECK(4
void grpc_timer_heap_init(grpc_timer_heap *heap)
void swap(Json::Value &a, Json::Value &b)
Specialize std::swap() for Json::Value.
bool grpc_timer_heap_is_empty(grpc_timer_heap *heap)
static void shrink_test(void)
void grpc_timer_heap_pop(grpc_timer_heap *heap)
grpc_timer * grpc_timer_heap_top(grpc_timer_heap *heap)
static void check_valid(grpc_timer_heap *pq)
static int contains(grpc_timer_heap *pq, grpc_timer *el)
static gpr_atm random_deadline(void)
static upb_pb_encoder_segment * top(upb_pb_encoder *e)
static grpc_timer * create_test_elements(size_t num_elements)
grpc
Author(s):
autogenerated on Fri May 16 2025 03:00:38