mirror of
https://github.com/cesanta/mongoose.git
synced 2024-12-03 17:28:59 +08:00
3eb4eb8074
PUBLISHED_FROM=331821dcd1f7dc8a94581cd8a9b51aa00a89fddc
808 B
808 B
title | decl_name | symbol_kind | signature |
---|---|---|---|
mg_set_timer() | mg_set_timer | func | double mg_set_timer(struct mg_connection *c, double timestamp); |
Schedules an MG_EV_TIMER event to be delivered at timestamp
time.
timestamp
is UNIX time (the number of seconds since Epoch). It is
double
instead of time_t
to allow for sub-second precision.
Returns the old timer value.
Example: set the connect timeout to 1.5 seconds:
c = mg_connect(&mgr, "cesanta.com", ev_handler);
mg_set_timer(c, mg_time() + 1.5);
...
void ev_handler(struct mg_connection *c, int ev, void *ev_data) {
switch (ev) {
case MG_EV_CONNECT:
mg_set_timer(c, 0); // Clear connect timer
break;
case MG_EV_TIMER:
log("Connect timeout");
c->flags |= MG_F_CLOSE_IMMEDIATELY;
break;