#!/usr/bin/perl -w use strict; use Benchmark; my %hash = ( DefaultLimit => 900, TimeLimit => 900, MODE => 'Off' ); sub by_hash { my $time_to_die; if ($hash{'TimeLimit'}) { if ($hash{'TimeLimit'} < $hash{'DefaultLimit'}) { $time_to_die = $hash{'TimeLimit'}; } else { $time_to_die = $hash{'DefaultLimit'}; } } else { $time_to_die = $hash{'DefaultLimit'}; } } sub by_var { my ($default, $time_to_die, $limit); $default = $hash{'DefaultLimit'}; $limit = $hash{'TimeLimit'} if ($hash{'TimeLimit'}); ($limit && ($limit < $default)) ? $time_to_die = $limit : $time_to_die = $default; } timethese (100000, { hash => 'by_hash', var => 'by_var'});