# New Ticket Created by  [email protected] 
# Please include the string:  [perl #126390]
# in the subject line of all future correspondence about this issue. 
# <URL: https://rt.perl.org/Ticket/Display.html?id=126390 >


I was trying to write up a new concurrency examples for a talk when I 
encountered this:
05:20:34 ~/temp $ time perl6 -MHTTP::UserAgent -e 'my $url = 
"http://www.rakudo.org/";; my $ua = HTTP::UserAgent.new; $ua.get($url)'

real    0m12.382s
user    0m10.374s
sys     0m0.203s
05:21:33 ~/temp $ time perl6 -MHTTP::UserAgent -e 'my $url = 
"http://www.rakudo.org/";; my $ua = HTTP::UserAgent.new; $ua.get($url); await 
start { $ua.get($url) }'

real    0m13.869s
user    0m10.607s
sys     0m0.215s
05:21:59 ~/temp $ time perl6 -MHTTP::UserAgent -e 'my $url = 
"http://www.rakudo.org/";; my $ua = HTTP::UserAgent.new; await start { 
$ua.get($url) }'

# hangs forever unless we do a FIRST $ua.get outside of start {}
The last example just hangs. As far as I can tell, I have to make at least one 
get($url) call outside of the promise for it to work.
I get the same behavior with LWP::Simple.
05:25:35 ~/temp $ time perl6 -MLWP::Simple -e 'my $url = 
"http://www.rakudo.org/";; LWP::Simple.get($url)'
real 0m9.003suser 0m7.277ssys 0m0.145s05:28:50 ~/temp $ time perl6 
-MLWP::Simple -e 'my $url = "http://www.rakudo.org/";; LWP::Simple.get($url); 
await start { LWP::Simple.get($url) }'
real 0m11.003suser 0m7.625ssys 0m0.162s05:29:11 ~/temp $ time perl6 
-MLWP::Simple -e 'my $url = "http://www.rakudo.org/";; await start { 
LWP::Simple.get($url) }'
# hangs ...
Best,Ovid-- IT consulting, training, specializing in Perl, databases, and agile 
developmenthttp://www.allaroundtheworld.fr/. 
Buy my book! - http://bit.ly/beginning_perl

Reply via email to