Я думаю, что Вы захотите что-то на основе сокетов.
, Если бы Вы хотите RPC, а не просто IPC, я предложил бы что-то как XML-RPC/SOAP, который работает на основе HTTP и может использоваться с любого языка.
__ del __
не является деконструктором. Он вызывается, когда вы удаляете фамилию объекта, что не обязательно происходит при выходе из интерпретатора.
Все, что управляет контекстом, например соединения, является диспетчером контекста
Например, есть закрытие
:
with closing(make_connection()) as conn:
dostuff()
# conn.close() is called by the `with`
В любом случае, это исключение происходит из-за того, что у вас есть демонический поток, который все еще пытается выполнить свою работу, в то время как интерпретатор уже завершает работу.
Закрывайте соединения в обычном потоке управления программой, а не в __ del __
, как сказал @ THC4k, это не деконструктор, и в целом вы не должны ' t необходимо использовать __ del __
(конечно, есть исключения).
Если вы создаете свои собственные потоки, вам нужно .setDaemon (True), если вы хотите, чтобы они нормально закрывались, когда основной поток завершается.