Using request task.

This commit is contained in:
Igor Sysoev
2019-11-14 16:39:48 +03:00
parent 14e56fe8c8
commit d4e3951c4d
3 changed files with 13 additions and 2 deletions

View File

@@ -424,6 +424,12 @@ nxt_h1p_conn_request_init(nxt_task_t *task, void *obj, void *data)
r->tls = c->u.tls;
#endif
r->task = c->task;
task = &r->task;
c->socket.task = task;
c->read_timer.task = task;
c->write_timer.task = task;
ret = nxt_http_parse_request_init(&h1p->parser, r->mem_pool);
if (nxt_fast_path(ret == NXT_OK)) {
@@ -1485,6 +1491,10 @@ nxt_h1p_request_close(nxt_task_t *task, nxt_http_proto_t proto,
nxt_router_conf_release(task, joint);
c = h1p->conn;
task = &c->task;
c->socket.task = task;
c->read_timer.task = task;
c->write_timer.task = task;
if (h1p->keepalive) {
nxt_h1p_keepalive(task, h1p, c);

View File

@@ -137,6 +137,7 @@ struct nxt_http_request_s {
nxt_sockaddr_t *remote;
nxt_sockaddr_t *local;
void *tls;
nxt_task_t task;
nxt_timer_t timer;
void *timer_data;

View File

@@ -570,9 +570,9 @@ nxt_http_request_close_handler(nxt_task_t *task, void *obj, void *data)
if (nxt_fast_path(proto.any != NULL)) {
protocol = r->protocol;
nxt_mp_release(r->mem_pool);
nxt_http_proto[protocol].close(task, proto, conf);
nxt_mp_release(r->mem_pool);
}
}