perl 回调必须是函数引用

31 篇文章 ¥39.90 ¥99.00
本文通过示例展示了在Perl中使用AnyEvent库创建定时器时,回调函数必须是函数引用,否则将导致错误。当将函数引用传递给cb参数时,程序能够正常运行并每秒打印'test'。如果直接传递函数调用,程序会抛出错误提示:"callback must be a CODE reference or another callable object"。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

[root@wx03 lib]# cat a1.pl 
use AE;
use AnyEvent;
##定义watch
my $t = AnyEvent->timer(
        after    => 0,
        interval => 5,
        cb       => sub {print test."\n";}
    );
    ##不要再每秒打印时间
    ##undef $t;
    my $cv = AnyEvent->condvar;
    $cv->recv;
[root@wx03 lib]# perl a1.pl 
test
test


[root@wx03 lib]# cat a1.pl 
use AE;
use AnyEvent;
##定义watch
my $t = AnyEvent->timer(
        after    => 0,
        interval => 5,
        cb       =>  print test."\n"
    );
    ##不要再每秒打印时间
    ##undef $t;
    my $cv = AnyEvent->condvar;
    $cv->recv;
[root@wx03 lib]# perl a1.pl 
test
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.

回调必须是一个函数引用或者而另外的回调对象

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

scan724

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值