<br>in AnyEvent::Handle::DESTROY, the $wbuf isn't afforded the same luxuray of utf8::downgrade() as the other syswrite call found via push_write().  If you are so unlucky as to have a Wide char inside of wbuf in the DESTROY linger, CPU will spin and the warnings keep spewing.  In my case, for an hour.  Lines of interest: <br>
<br><pre>      push @linger, AE::io $fh, 1, sub {
         my $len = syswrite $fh, $wbuf, length $wbuf;
</pre><br>found this is via AE::HTTP requests using POST where the body wasn't turned in to bytes before getting in to linger.  <br>Obviously my fault;  encoding the data fixes things, but FYI. <br><br>here's the gist of testing / reproducing it <br>
<br>  <a href="https://gist.github.com/4355681">https://gist.github.com/4355681</a><br><br>bug?  caller should be using correct coding, sure; but a surprise awaits if one gets these conditions to line up.  a similar utf8::downgrade seemed to fix. <br>
<br>thx,<br><br>-gleeco