How to clean-up HTTP::Async if still in use <p>I am using Perl library <a href="http://search.cpan.org/~evdb/HTTP-Async-0.10/lib/HTTP/Async.pm" rel="nofollow">HTTP::Async</a> as follows:</p> <pre><code>use strict; use warnings; use HTTP::Async; use Time::HiRes; ... my $async = HTTP::Async-&gt;new( ... ); my $request = HTTP::Request-&gt;new( GET =&gt; $url ); my $start = [Time::HiRes::gettimeofday()]; my $id = $async-&gt;add($request); my $response = undef; while (!$response) { $response = $async-&gt;wait_for_next_response(1); last if Time::HiRes::tv_interval($start) &gt; TIME_OUT; } ... </code></pre> <p>When <code>while</code> loop timeout and script ends, I experience the the following error message: </p> <pre><code>HTTP::Async object destroyed but still in use at script.pl line 0 HTTP::Async INTERNAL ERROR: 'id_opts' not empty at script.pl line 0 </code></pre> <p>What are my options? How can I "clean-up" HTTP::Async object if still in use, but not needed anymore?</p>