Un vigilante de tipo  idle  detecta cuando el sistema esta ocioso, esto es: cuando
no hay eventos pendientes. Permite dos atributos adicionales min => $seconds
y  max => $seconds. 
max segundos
Event esta ocioso
los eventos no serán generados con mayor frecuencia que min segundos
min ni max el vigilante
adopta la conducta de una-vez por defecto (si repeat es falso).
Si repeat es verdadero la conducta por defecto es repetir.
repeat a 1 cambiamos dicha conducta. en tal caso: min = 0.01 y
max toma el valor infinito. 
pp2@nereida:~/src/perl/Event$ cat -n idlewatcher.pl
 1  #!/usr/bin/perl
 2  use warnings;
 3  use strict;
 4
 5  use IO::File;
 6  use Math::BigFloat qw(:constant);
 7  use constant VALUE => 0.001;
 8  use Event qw{loop unloop};
 9
10  STDIN->blocking(0);
11  STDERR->autoflush(1);
12  print "Press CTRL_D to finish, any other key to monitor the computation\n";
13
14  my $idle = Event->idle(
15    data => VALUE,
16    cb => sub {
17      $_[0]->w->data($_[0]->w->data+VALUE);
18    },
19    repeat => 1
20  );
21
22  my $io = Event->io(
23    fd => \*STDIN,
24    cb => sub {
25      warn "Partial result: ", $idle->data,".\n";
26      my $bytes = sysread(STDIN, $_, 4);
27      unloop if (defined($bytes) and ($bytes == 0));
28    }
29  );
30  loop;
Event
proporciona un atributo especial para los objetos watcher
con nombre  data . Puede ser utilizado por
el programador para guardar información en el objeto watcher.
El único argumento que se pasa al manejador o callback es el objeto evento que ha de ser manejado.
El método w de dicho objeto permite obtener el vigilante.
Cuando se ejecuta el programa anterior se obtiene una salida similar a esta:
pp2@nereida:~/src/perl/Event$ idlewatcher.pl
Press CTRL_D to finish, any other key to monitor the computation
                            <-- retorno de carro 
Resultado parcial: 0.179.
                            <-- retorno de carro 
Resultado parcial: 0.249.
                            <-- retorno de carro 
Resultado parcial: 0.346.
                            <-- retorno de carro 
Resultado parcial: 0.447.
                            <-- retorno de carro 
Resultado parcial: 0.54.
^D <-- El usuario pulsa CTRL-D en un sistema Unix para terminar
min = 0 en el ejemplo anterior. ¿Que observa?Casiano Rodríguez León
