diff options
| author | Garrett D'Amore <garrett@damore.org> | 2017-03-29 17:05:08 -0700 |
|---|---|---|
| committer | Garrett D'Amore <garrett@damore.org> | 2017-03-29 17:05:08 -0700 |
| commit | 86eaf052cc535658783dd5c3d5925f58fd70f983 (patch) | |
| tree | e7675f617b749a5a4c5aeb8ca00e0b9be6f84e2a /src/transport/tcp | |
| parent | 84990c6ecb35ef322b74b8cc9e74ad5964b66ee5 (diff) | |
| download | nng-86eaf052cc535658783dd5c3d5925f58fd70f983.tar.gz nng-86eaf052cc535658783dd5c3d5925f58fd70f983.tar.bz2 nng-86eaf052cc535658783dd5c3d5925f58fd70f983.zip | |
IPC send/recv works asynchronously for POSIX.
As with TCP, we're still using threads under the hood. But this
completes the send/recv logic conversion for POSIX to our AIO framework,
and hence represents a substantial milestone towards full asyncronous
operation.
We still need to do accept/connect operations asynchronously, then making.
Windows overlapped IO work properly. After that, poll/epoll/kqueue, etc.
Diffstat (limited to 'src/transport/tcp')
| -rw-r--r-- | src/transport/tcp/tcp.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/src/transport/tcp/tcp.c b/src/transport/tcp/tcp.c index 1cf64768..7e712cc8 100644 --- a/src/transport/tcp/tcp.c +++ b/src/transport/tcp/tcp.c @@ -107,6 +107,9 @@ nni_tcp_pipe_fini(void *arg) { nni_tcp_pipe *pipe = arg; + if (pipe->rxmsg) { + nni_msg_free(pipe->rxmsg); + } nni_aio_fini(&pipe->rxaio); nni_aio_fini(&pipe->txaio); nni_plat_tcp_fini(pipe->tsp); |
