gpt4 book ai didi

linux - Spreadsheet::WriteExcel set_optimization() 生成取消链接错误

转载 作者:太空宇宙 更新时间:2023-11-04 12:31:50 26 4
gpt4 key购买 nike

长期以来,我们一直在使用 Spreadsheet::WriteExcel,它的效果非常好。

几年前我们迁移到 Excel-Writer-XLSX,它使用的内存是 WriteExcel 的 5 倍,如 documentation 中所述.感谢 XLSX,用户现在能够生成更大的 Excel 文件。我们从几周开始就开始面临内存使用问题,其中大约需要 84% 的服务器内存。

同一文档指出 $workbook->set_optimization() 应该可以解决问题。给定的性能数据很有希望。我们尝试在示例文件上使用 $workbook->set_optimization() 但这不起作用。它会生成一个取消链接错误。

如果删除了 set_optimization(),则可以正确生成 Excel 文件。示例由作者提供在此 thread :

#!/usr/bin/perl -w

use strict;
use Excel::Writer::XLSX;

my $workbook = Excel::Writer::XLSX->new('test.xlsx');
$workbook->set_optimization();

my $worksheet = $workbook->add_worksheet();


my @header_values = ( 1, 2, 3, 'foo', 'bar', 6, 7 );
my $header_cnt = 0;

for my $header_cell (@header_values){
$worksheet->write(0, $header_cnt, $header_cell);
$header_cnt++;
}

$workbook->close();

Error unlinking file /opt/.../rKhGTRYWSJ using unlink0 at /usr/local/share/perl5/Excel/Writer/XLSX/Worksheet.pm line 204
(in cleanup) Error unlinking file /opt/.../iGr8Qo8VBD using unlink0 at /usr/local/share/perl5/Excel/Writer/XLSX/Worksheet.pm line 204

我们正在运行:

  • Excel-Writer-XLSX 0.70
  • perl v5.10.1
  • Red Hat Enterprise Linux Server 6.8 版(圣地亚哥)

如有任何帮助,我们将不胜感激。

最佳答案

Excel::Writer::XLSX 用于在 XLSX 中写入大量数据并处理大数据并减少内存使用 set_optimization() 方法。

在 XLSX 文件中,一个工作簿最多可以创建 10,48,576 行和 16,384 列,如果行数超过最大限制,可以在同一个工作簿中创建一个新工作表,这样大量的可以处理数据。

引用此链接中的“Write_largeData_XLSX.pl”https://github.com/AarthiRT/Excel_Writer_XLSX了解更多详情。

关于linux - Spreadsheet::WriteExcel set_optimization() 生成取消链接错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43090638/

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