Я делаю клиент так:Ruby: Как закрыть соединение SOAP4R?
client = SOAP::WSDLDriverFactory.new(wsdl).create_rpc_driver
И я получаю SOAP :: RPC :: класс Driver ...
как я сказать ему, чтобы закрыть себя?
Я делаю клиент так:Ruby: Как закрыть соединение SOAP4R?
client = SOAP::WSDLDriverFactory.new(wsdl).create_rpc_driver
И я получаю SOAP :: RPC :: класс Driver ...
как я сказать ему, чтобы закрыть себя?
Я считаю, что он открывает и закрывает сокет внутри каждого запроса или партии. Я ненавижу говорить «не беспокойтесь об этом, пусть GC очистит его», но я думаю, что это на самом деле правильный ответ, поскольку он управляет своими собственными связями.
Согласно This нет близкого метода.
Ответ на вопрос, если люди, которые посещают эту ссылку, ищут ответ на этот вопрос (даже если qn составляет 2 года).
Зная версию soap4r и версию ruby, я бы укрепил свой ответ, но если вы используете soap4r (1.5.5 или 1.5.8) и Ruby (1.8.7 или выше), соединение с удаленной конечной точкой выполняется либо но httpclient (gem) или встроенный netHttpClient (файл netHttpClient.rb в самолете soap4r). Оба используют методы запуска и публикации HTTP через блок для отправки запроса и получения ответа. И когда HTTP-соединение запускается через блок, он закрывается, как только заканчивается блок.