2010-08-27 56 views
0
#test.pl 

use Getopt::Long; 
Getopt::Long::Configure ("bundling"); 

GetOptions ('TestB|B|b' => \$testb , 
      'TestA|A|a' => \$testa,); 

这里是我的情况我可以exute perl test.pl -Ba的Perl的Getopt配置问题

所以我用Getopt::Long::Configure ("bundling");

正因为如此我的程序是越来越慢initally即使我tryed的选项来执行 perl test.pl

有没有最好的办法解决这个问题?

测试结果:

with Getopt::Long::Configure ("bundling"); 

real 0m6.101s 
user 0m2.040s 
sys  0m0.260s 

Without Getopt::Long::Configure ("bundling"); 

real 0m3.019s 
user 0m2.020s 
sys  0m0.200s 
+2

我不明白你的问题。您的程序以何种方式变慢?多少钱?你怎么知道的? – 2010-08-27 15:27:56

+1

请显示确切的基准测试结果,证明这是一贯的情况。我的初步测试没有性能影响 – DVK 2010-08-27 15:28:25

+0

更新了我的问题... – Tree 2010-08-27 15:31:24

回答

1

虽然bundling明显放缓的初步处理(因为你现在要解析的子串的不同的组合参数字符串),你似乎至多4%承担系统时间和1%的用户时间增加为空脚本。与实际运行脚本的成本相比,这不应该是非常重要的。我承认我不确定实时变化 - 它们似乎不太相关 - 可能是由于其他因素?

+0

你是对的:-) – Tree 2010-08-27 15:41:51