Skip Menu |

This queue is for tickets about the IO-Async CPAN distribution.

Report information
The Basics
Id: 104413
Status: open
Priority: 0/
Queue: IO-Async

Owner: Nobody in particular
Requestors: barrie.perry [...]

Bug Information
Severity: (no value)
Broken in: (no value)
Fixed in: (no value)

MIME-Version: 1.0
X-Spam-Status: No, score=-2.698 tagged_above=-99.9 required=10 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, FREEMAIL_FROM=0.001, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_LOW=-0.7] autolearn=ham
X-Spam-Flag: NO
Content-Type: multipart/alternative; boundary="001a11c3f5be7e1c670515fd24dc"
Message-ID: <CAB59JwR=42bMxVYmPeuvpS486555JnvByJ3Og6CbuCb-vEPieg [...]>
X-Received: by with SMTP id a5mr668449lbg.16.1431551866705; Wed, 13 May 2015 14:17:46 -0700 (PDT)
X-Virus-Scanned: Debian amavisd-new at
X-Spam-Score: -2.698
Received: from localhost (localhost []) by (Postfix) with ESMTP id 260792403DC for <cpan-bug+IO-Async [...]>; Wed, 13 May 2015 17:18:00 -0400 (EDT)
Received: from ([]) by localhost ( []) (amavisd-new, port 10024) with ESMTP id Us7Q-k38rH9T for <cpan-bug+IO-Async [...]>; Wed, 13 May 2015 17:17:59 -0400 (EDT)
Received: from ( []) by (Postfix) with SMTP id CAE542403C2 for <bug-IO-Async [...]>; Wed, 13 May 2015 17:17:58 -0400 (EDT)
Received: (qmail 29618 invoked by alias); 13 May 2015 21:17:57 -0000
Received: from (HELO ( by (qpsmtpd/0.28) with ESMTP; Wed, 13 May 2015 14:17:51 -0700
Received: by lagv1 with SMTP id v1so41121479lag.3 for <bug-IO-Async [...]>; Wed, 13 May 2015 14:17:46 -0700 (PDT)
Received: by with HTTP; Wed, 13 May 2015 14:17:46 -0700 (PDT)
Authentication-Results: (amavisd-new); dkim=pass header.i= [...]
Delivered-To: cpan-bug+IO-Async [...]
Subject: Infinite wait if $SIG{'INT'} is set to a custom function before calling $loop->run
Return-Path: <barrie.perry [...]>
X-RT-Mail-Extension: io-async
X-Original-To: cpan-bug+IO-Async [...]
Dkim-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;; s=20120113; h=mime-version:date:message-id:subject:from:to:content-type; bh=NdxFyKbEygih5ptcHMYKrwaaOzqM0PY9qltjsh561Rk=; b=igg7+tTu8eDORZ8wolBl48RtESKIo/c7oz+AQwDSq3t/C4pTfXHb3aqo5JY7JicqpE bcxS0ANUQvpDTXW0Ae/x1l2KdqjFJK9AyttwsHTUoVk62gnPR310CsnH6SnvXIUKaqbE O3C6O0UlTo2qruG3qqVBKjT5W8H/ytSeLFkX0g9l6kuKvj28KcfjR9OTVgFnJshEKH5X +Bwk4ZBE+GtEDBXuKRrSbKy12Y73HXwOPZljzvOiB25NLbnSCaysWUvBSJldDuLYbcwx wexXOtzhRmZxF7g7KcOxjpCZEP7Jcl++a2dSFseXzy8OOpSkOH2zHmj90iB7u8SQnTVt 4DUA==
Date: Wed, 13 May 2015 17:17:46 -0400
To: bug-IO-Async [...]
From: Barrie Perry <barrie.perry [...]>
X-RT-Interface: Email
Content-Length: 0
content-type: text/plain; charset="utf-8"
X-RT-Original-Encoding: utf-8
Content-Length: 849
Download (untitled) / with headers
text/plain 849b
If $SIG{'INT'} is defined before calling $loop->run the script enter an infinite wait. CTRL-C is not able to terminate the script. Using -d:Trace it looks like perl is stuck here: IO/Async/Loop/ my $ret = select( $rvec, $wvec, $evec, $timeout ); *Environment:* Windows 7 Perl v5.20.2, built for MSWin32-x86-multi-thread-64int (ie: portable strawberry-perl- IO-Async-0.66 *Example* use v5.018; use strict; use warnings; use IO::Async::Loop; sub signal_handler { die shift; } $SIG{'INT'} = \&signal_handler; # comment out this line and CTRL-C can terminate the script in $loop->run my $loop = IO::Async::Loop->new; # # CTRL-C is working here # for (1..100) { # select(undef, undef, undef, 0.250); # } # The loop itself isn't working here, even CTRL-C won't terminate the script $loop->run; die "END";
content-type: text/html; charset="utf-8"
Content-Transfer-Encoding: quoted-printable
X-RT-Original-Encoding: utf-8
Content-Length: 1422
MIME-Version: 1.0
In-Reply-To: <CAB59JwR=42bMxVYmPeuvpS486555JnvByJ3Og6CbuCb-vEPieg [...]>
X-Mailer: MIME-tools 5.504 (Entity 5.504)
Content-Disposition: inline
X-RT-Interface: Web
References: <CAB59JwR=42bMxVYmPeuvpS486555JnvByJ3Og6CbuCb-vEPieg [...]>
Content-Type: text/plain; charset="utf-8"
Message-ID: <rt-4.0.18-14577-1433167296-1638.104413-0-0 [...]>
Content-Transfer-Encoding: binary
X-RT-Original-Encoding: utf-8
X-RT-Encrypt: 0
X-RT-Sign: 0
Content-Length: 812
Download (untitled) / with headers
text/plain 812b
On Wed May 13 17:18:01 2015, wrote: Show quoted text
> If $SIG{'INT'} is defined before calling $loop->run the script enter an > infinite wait. CTRL-C is not able to terminate the script. > > Using -d:Trace it looks like perl is stuck here: > IO/Async/Loop/ my $ret = select( $rvec, $wvec, $evec, > $timeout ); > > > *Environment:* > Windows 7
Ah. At this point I'm afraid I don't know enough about Windows and signals, to know if this sort of thing is expected to work or not. I do know that signals aren't as big or powerful a thing generally on Windows as they are on the POSIXes, and there's a lot of abilities that just don't exist. I'm afraid I'll have to defer this to anyone who might know more about Windows and signals to suggest what can be done about it. -- Paul Evans

This service is sponsored and maintained by Best Practical Solutions and runs on infrastructure.

Please report any issues with to