加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

perl – 如何解决以下错误“未定义的子程序&main :: resetCo

发布时间:2020-12-16 06:12:53 所属栏目:大数据 来源:网络整理
导读:我如何解决以下错误“Undefined subroutine main :: resetCounters”?该子程序已经原型化,但Perl仍然抱怨.以下代码是我遇到的问题: #!/usr/bin/perluse strict;use warnings;...sub reportStats();sub resetCounters(); #HERE IS THE PROTOTYPEsub getUppe
我如何解决以下错误“Undefined subroutine& main :: resetCounters”?该子程序已经原型化,但Perl仍然抱怨.以下代码是我遇到的问题:

#!/usr/bin/perl
use strict;
use warnings;

...

sub reportStats();
sub resetCounters();  #HERE IS THE PROTOTYPE
sub getUpperBusTimeStampAndBatchSize($);
sub toMs($);
sub tibTimeToMs();
sub calcStdDev();

...

print "nTimeStamp  TPS   MPS    MaxBat  AvgBat  MaxLat  AvgLat  StdLat  >5ms    %>5msn";
resetCounters();  #THIS IS THE LINE CONTAINING THE ERROR

...

sub resetCounters()
# -----------------------------------------------------------
# resets all metrics counters
# -----------------------------------------------------------
{
  $tps = 0;
  $mps = 0;
  $batch = 0;
  $maxBatch = 0;
  $avgBatch = 0;
  $latency = 0;
  $latencySum = 0;
  $maxLatency = 0;
  $avgLatency = 0;
  $overThreshold = 0;
  $percentOver = 0;
  $currentSecond = $second;
  @latencies = ();
}

解决方法

我不能肯定这是问题所在,但您可能会查看 subs编译指示以预先确定您的函数.

快一点……

#!/usr/bin/env perl

use strict;
use warnings;

use subs "myclear";

my $var = 1;

myclear;

print $var;

sub myclear () {
  $var = 0;
}

此外,由于这种程序命令很可能作为自己的语句发生,因此它实际上不需要空原型或任何原型.

#!/usr/bin/env perl

use strict;
use warnings;

use subs "myclear";

my $var = 1;

myclear;

print $var;

sub myclear {
  $var = 0;
}

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读