通过哈希顺序随机化在Perl 5.18+中影响哈希合并方法?

时间:2013-01-22 17:10:26

标签: perl hash merge

根据this question的答案,在Perl 5中合并两个哈希值可以通过以下方式完成:

%newHash = (%hash1, %hash2); %hash1 = %newHash;

或:

@hash1{keys %hash2} = values %hash2;

另一方面,Perl 5.18 will introduce per process hash randomization

第二种方法在Perl 5.18中使用是否仍然正确?

1 个答案:

答案 0 :(得分:15)

阅读Re^2: Hash order randomization is coming, are you ready?后,答案是。和以前一样,keysvalueseach将生成相同的序列,如果哈希在两者之间没有更改,则会迭代相同进程中的哈希值。