diff options
author | Max Romanov <max.romanov@nginx.com> | 2017-10-04 14:57:29 +0300 |
---|---|---|
committer | Max Romanov <max.romanov@nginx.com> | 2017-10-04 14:57:29 +0300 |
commit | 4ae76249edb97775be8a0c749ad9ee79e3e85393 (patch) | |
tree | 31a809a7c0cf442c83ff8b662d0574c7703609c1 /src/nxt_process.c | |
parent | fcd141936cacee24109c8b64fd06c14925aca4a6 (diff) | |
download | unit-4ae76249edb97775be8a0c749ad9ee79e3e85393.tar.gz unit-4ae76249edb97775be8a0c749ad9ee79e3e85393.tar.bz2 |
Fixing memory leak when handling remove pid message.
Worker threads ports need to receive 'remove pid' message to properly handle
application process exit case and finish requests processed by particular
application worker. Main process send 'remove pid' notification to service
thread port only and this message must be 'proxied' to other running engines.
Separate memory pool created for this message. For each engine structure
required to post message to engine allocate from the pool using 'retain'
allocation method. After successfull post structure will be freed using
'release' method. To completely destroy poll one more 'release' should be
called to release initial reference count.
I'm afraid this should be simplified using good old malloc() and free() calls.
Diffstat (limited to '')
0 files changed, 0 insertions, 0 deletions