gpt4 book ai didi

Ruby 结构 - 性能开销?

转载 作者:太空宇宙 更新时间:2023-11-03 16:11:11 25 4
gpt4 key购买 nike

在 Ruby 中使用结构(与数组、哈希等相比)时,您是否会承担任何性能开销?

最佳答案

我尝试多次运行以下(根据 Jörg 的评论,这已更新为使用固定变量作为值而不是创建大量字符串):

require 'benchmark'

Example = Struct.new("Example", :value)

struct = Example.new
hash = {}
value = "The value"

n = 5000000
Benchmark.bm do |m|
# test assignment and access for Hash and Struct
m.report { n.times do; hash[:value] = value; end }
m.report { n.times do; struct.value = value; end }
end

更新

n 的值足够大时,Struct 似乎会稍微慢一些,但我无法想象这会很明显或在实践中成为问题。

关于Ruby 结构 - 性能开销?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3194716/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com