我正在创建大约 10,000 行和大约 50 列数据。我的代码如下所示:
Axlsx::Package.new do |spreadsheet|
fields.keys.each do |question|
sortedFields = fields[question].keys.sort
spreadsheet.workbook.add_worksheet(:name => question) do |sheet|
# Add spreadsheet header
sheet.add_row(sortedFields)
data[question].each do |client,results|
results.each do |result|
row = sortedFields.map{|field|
result[field] || ""
}
sheet.add_row(row)
end
end
end
end
它真的很慢并且使用大量内存。有没有办法将行排队然后批量添加,或者其他可以提高性能的策略?