perl 回调函数

前端之家收集整理的这篇文章主要介绍了perl 回调函数前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
在计算机程序设计中,回调函数,或简称回调(Callback),是指通过函数参数传递到其它代码的,某一块可执行代码的引用。这一设计允许了底层代码调用在高层定义的子程序。

没啥不好理解的呀,就是向函数的参数为   一个函数的引用呀。。

[root@wx03 ~]# cat a2.pl 
use AE;
   use AnyEvent;
##定义watch
    sub run {
    my $code=shift;
    my $t = AnyEvent->timer(
        after    => 0,interval => 1,cb       => $code,);
my $cv = AnyEvent->condvar;
  $cv->recv;
        };

sub test {
print  "11111111111\n";
};

run(sub {test()});
[root@wx03 ~]# perl a2.pl 
11111111111
11111111111


[root@wx03 ~]# cat a2.pl 
use AE;
   use AnyEvent;
##定义watch
    sub run {
    my $code=shift;
    my $t = AnyEvent->timer(
        after    => 0,);
my $cv = AnyEvent->condvar;
  $cv->recv;
        };

sub test {
print  "11111111111\n";
};

run(\&test);
[root@wx03 ~]# perl a2.pl 
11111111111
11111111111

[root@wx03 ~]# perl a2.pl 
11111111111
1: callback must be a CODE reference or another callable object at /usr/local/perl/lib/site_perl/5.22.1/x86_64-linux/AnyEvent/Impl/EV.pm line 50.
[root@wx03 ~]# cat a2.pl 
use AE;
   use AnyEvent;
##定义watch
    sub run {
    my $code=shift;
    my $t = AnyEvent->timer(
        after    => 0,);
my $cv = AnyEvent->condvar;
  $cv->recv;
        };

sub test {
print  "11111111111\n";
};

run(&test);
[root@wx03 ~]# perl a2.pl 
11111111111
1: callback must be a CODE reference or another callable object at /usr/local/perl/lib/site_perl/5.22.1/x86_64-linux/AnyEvent/Impl/EV.pm line 50.

猜你在找的Perl相关文章