diff options
author | Richard Purdie <richard.purdie@linuxfoundation.org> | 2017-07-28 15:37:29 +0100 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2017-07-28 15:54:26 +0100 |
commit | 77fd3a3a29a569e212374b27aea742ddbaafcdd5 (patch) | |
tree | 22826db03269e340ecbeac8f8f1415f6ec19fa3e /lib/bb/server/process.py | |
parent | 930d077637928213e13a07c78fee3bf7a8c37ebf (diff) | |
download | bitbake-contrib-77fd3a3a29a569e212374b27aea742ddbaafcdd5.tar.gz |
process: Move socket keep alive into BitBakeProcessServerConnection
This cleans up the socket keep alive into better class structured code
and adds cleanup of the open file descriptors upon shutdown.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'lib/bb/server/process.py')
-rw-r--r-- | lib/bb/server/process.py | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/lib/bb/server/process.py b/lib/bb/server/process.py index 3d9077fd0..fb96804e6 100644 --- a/lib/bb/server/process.py +++ b/lib/bb/server/process.py @@ -336,12 +336,16 @@ class ServerCommunicator(): return class BitBakeProcessServerConnection(object): - def __init__(self, ui_channel, recv, eq): + def __init__(self, ui_channel, recv, eq, sock): self.connection = ServerCommunicator(ui_channel, recv) self.events = eq + # Save sock so it doesn't get gc'd for the life of our connection + self.socket_connection = sock def terminate(self): self.socket_connection.close() + self.connection.connection.close() + self.connection.recv.close() return class BitBakeServer(object): @@ -413,12 +417,10 @@ def connectProcessServer(sockname, featureset): sendfds(sock, [writefd, readfd1, writefd2]) - server_connection = BitBakeProcessServerConnection(command_chan, command_chan_recv, eq) + server_connection = BitBakeProcessServerConnection(command_chan, command_chan_recv, eq, sock) server_connection.connection.updateFeatureSet(featureset) - # Save sock so it doesn't get gc'd for the life of our connection - server_connection.socket_connection = sock except: sock.close() raise |