我正在使用mod-perl。我的印象是,我們的變量不會爲每次執行而創建。即如果我創建了一個散列變量,那麼該變量將被創建一次,並將保留在apache的內存緩存中供後續運行。Mod-perl和我們的變量 - 它加速嗎?
所以我的問題是會不會有在MOD-perl的下面兩個執行速度有什麼區別?
Module1
....
....
our %myhash = qw (list of key value);
...
....
sub fun() {
if(exists $myhash{'key'}) {
...................
return ;
}
和
Module2
.....
.....
sub fun() {
my %myhash = qw (list of key value);
if(exists $myhash{'key'}) {
...................
return ;
}
哪一個是對MOD-perl的在執行的速度長期更好,如果我每次運行一次調用這個函數?
如果我在單次運行中使用此功能,該怎麼辦?不是兩次? – virus
在這種情況下,它並沒有那麼重要。這取決於用例。通常,一些變量在全球範圍內維護,這爲程序的可維護性提供了很大的好處。但是,我通常會盡量減少全球變數。 – HackerKarma