Go to the documentation of this file.
35 struct sockaddr_in server_addr;
38 typedef struct buf_s {
43 static char PING[] =
"PING\n";
53 static char slab[64 * 1024];
68 fprintf(
stderr,
"ping_pongs: %d roundtrips/s\n",
85 FATAL(
"uv_udp_send failed");
91 const struct sockaddr*
addr,
98 for (
i = 0;
i < nread;
i++) {
101 if (pinger->
state == 0) {
115 pinger_t* pinger = malloc(
sizeof(*pinger));
126 pinger->
udp.data = pinger;
130 FATAL(
"uv_udp_read_start failed");
141 for (
i = 0;
i < pingers; ++
i) {
147 fprintf(
stderr,
"ping_pongs: %d pingers, ~ %lu roundtrips/s\n",
155 BENCHMARK_IMPL(ping_udp##PINGERS) {\
156 return ping_udp(PINGERS); \
UV_EXTERN uint64_t uv_now(const uv_loop_t *)
static unsigned long completed_pings
UV_EXTERN int uv_run(uv_loop_t *, uv_run_mode mode)
static int64_t start_time
UV_EXTERN void uv_close(uv_handle_t *handle, uv_close_cb close_cb)
UV_EXTERN int uv_ip4_addr(const char *ip, int port, struct sockaddr_in *addr)
for(map_begin_internal(intern, &it);!map_done(&it);map_next(&it))
UV_EXTERN uv_loop_t * uv_default_loop(void)
UV_EXTERN int uv_udp_init(uv_loop_t *, uv_udp_t *handle)
static int ping_udp(unsigned pingers)
static void pinger_read_cb(uv_udp_t *udp, ssize_t nread, const uv_buf_t *buf, const struct sockaddr *addr, unsigned flags)
static void buf_free(const uv_buf_t *buf)
UV_EXTERN int uv_udp_recv_start(uv_udp_t *handle, uv_alloc_cb alloc_cb, uv_udp_recv_cb recv_cb)
#define MAKE_VALGRIND_HAPPY()
static int completed_pingers
static void pinger_write_ping(pinger_t *pinger)
static void buf_alloc(uv_handle_t *tcp, size_t size, uv_buf_t *buf)
static void pinger_close_cb(uv_handle_t *handle)
struct sockaddr_in server_addr
UV_EXTERN uv_buf_t uv_buf_init(char *base, unsigned int len)
UV_EXTERN int uv_udp_try_send(uv_udp_t *handle, const uv_buf_t bufs[], unsigned int nbufs, const struct sockaddr *addr)
static void udp_pinger_new(void)
static struct rpc_state state
grpc
Author(s):
autogenerated on Fri May 16 2025 02:57:45