使用 ionic zip 时压缩失败

2024-04-14

我正在使用最新版本的 ionic zip 版本 1.9.1.8。我已经设置了 ionic zip 的属性ParallelDeflateThreshold = 0。过去两个月,压缩机制工作得很好。突然,它停止工作了。压缩线程挂起,ionic zip 刚刚创建了 tmp 文件,但无法创建 zip 文件。即使文件很小,我也可以轻松地重现这个问题。

对于这个问题我的分析如下

问题出在最新版本的 ionic zip 上,在本例中,ionic zip 在创建 zip 文件时挂起。我们注意到,其他几个使用此 dll 的用户也在他们的网站上报告了此类错误。请参考the link http://dotnetzip.codeplex.com/releases/view/68268.这个问题可以通过禁用来解决ParallelThresholdionic zip 的属性,但它会延迟大型日志文件的性能,因为它在单线程而不是多线程模式下工作。

现在通过设置解决了这个问题ParallelDeflateThreshold属性设置为默认值。但是我找不到这个问题的确切原因。为什么压缩会突然失败?没有更换机器。


我遇到了类似的问题,对于小于 20-25MB 的较小 zip 文件,需要 3-4 秒,但任何大于此的文件,都需要无限的时间。代码从未完成执行。

我开始担心也许使用 DotNetZip 库是一个错误的决定,因为我们使用的 zip 文件最大为 500MB。

在保存 zip 文件的行之前,我添加了:zip.ParallelDeflateThreshold = -1;

这可以确保永远不会创建单独的线程。看起来,一旦 zip 文件超过某个阈值,DotNetZip 就会不断创建大量线程,导致获取最终 zip 文件的延迟非常大。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用 ionic zip 时压缩失败 的相关文章

  • 如何从 C# 中的 dataTable.Select( ) 查询中删除单引号?

    所以我有一个经销商名称列表 我正在我的数据表中搜索它们 问题是 一些傻瓜必须被命名为 Young s 这会导致错误 drs dtDealers Select DealerName dealerName 所以我尝试替换字符串 尽管它对我不起作
  • 如何捕获未发送到 stdout 的命令行文本?

    我在项目中使用 LAME 命令行 mp3 编码器 我希望能够看到某人正在使用什么版本 如果我只执行 LAME exe 而不带参数 我会得到 例如 C LAME gt LAME exe LAME 32 bits version 3 98 2
  • 为什么pow函数比简单运算慢?

    从我的一个朋友那里 我听说 pow 函数比简单地将底数乘以它的指数的等价函数要慢 例如 据他介绍 include
  • C++ 是否可以在 MacOS 上与 OpenMP 和 boost 兼容?

    我现在已经尝试了很多事情并得出了一些结论 也许 我监督了一些事情 但似乎我无法完成我想要的事情 问题是 是否有可能使用 OpenMP 和 boost 在 MacOS High Sierra 上编译 C 一些发现 如果我错了请纠正我 Open
  • 查找进程的完整路径

    我已经编写了 C 控制台应用程序 当我启动应用程序时 不使用cmd 我可以看到它列在任务管理器的进程列表中 现在我需要编写另一个应用程序 在其中我需要查找以前的应用程序是否正在运行 我知道应用程序名称和路径 所以我已将管理对象搜索器查询写入
  • 如何判断计算机是否已重新启动?

    我曾经使用过一个命令行 SMTP 邮件程序 作为试用版的限制 它允许您在每个 Windows 会话中最多接收 10 封电子邮件 如果您重新启动计算机 您可能还会收到 10 个以上 我认为这种共享软件破坏非常巧妙 我想在我的应用程序中复制它
  • 函数参数的默认参数是否被视为该参数的初始值设定项?

    假设我有这样的函数声明 static const int R 0 static const int I 0 void f const int r R void g int i I 根据 dcl fct default 1 如果在参数声明中指
  • 从同一个类中的另一个构造函数调用构造函数

    我有一个带有两个构造函数的类 C 这是代码片段 public class FooBar public FooBar string s constructor 1 some functionality public FooBar int i
  • 将 Long 转换为 DateTime 从 C# 日期到 Java 日期

    我一直尝试用Java读取二进制文件 而二进制文件是用C 编写的 其中一些数据包含日期时间数据 当 DateTime 数据写入文件 以二进制形式 时 它使用DateTime ToBinary on C 为了读取 DateTime 数据 它将首
  • C# 存档中的文件列表

    我正在创建一个 FileFinder 类 您可以在其中进行如下搜索 var fileFinder new FileFinder new string C MyFolder1 C MyFolder2 new string
  • 类型约束

    我有以下类层次结构 class Header IEnumerable
  • WPF DataGridTemplateColumn 组合框更新所有行

    我有这个 XAML 它从 ItemSource 是枚举的组合框中选择一个值 我使用的教程是 http www c sharpcorner com uploadfile dpatra combobox in datagrid in wpf h
  • 在屏幕上获取字符

    我浏览了 NCurses 函数列表 似乎找不到返回已打印在屏幕上的字符的函数 每个字符单元格中存储的字符是否有可访问的值 如果没有的话Windows终端有类似的功能吗 我想用它来替换屏幕上某个值的所有字符 例如 所有a s 具有不同的特征
  • 使 Guid 属性成为线程安全的

    我的一个类有一个 Guid 类型的属性 该属性可以由多个线程同时读写 我的印象是对 Guid 的读取和写入不是原子的 因此我应该锁定它们 我选择这样做 public Guid TestKey get lock testKeyLock ret
  • OpenGL:仅获取模板缓冲区而没有深度缓冲区?

    我想获取一个模板缓冲区 但如果可能的话 不要承受附加深度缓冲区的开销 因为我不会使用它 我发现的大多数资源表明 虽然模板缓冲区是可选的 例如 排除它以利于获得更高的深度缓冲区精度 但我还没有看到任何请求并成功获取仅 8 位模板缓冲区的代码
  • 这个可变参数模板示例有什么问题?

    基类是 include
  • 我可以在“字节数”设置为零的情况下调用 memcpy() 和 memmove() 吗?

    当我实际上没有什么可以移动 复制的时候 我是否需要处理这些情况memmove memcpy 作为边缘情况 int numberOfBytes if numberOfBytes 0 memmove dest source numberOfBy
  • 是否可以在不连接数据库的情况下检索 MetadataWorkspace?

    我正在编写一个需要遍历实体框架的测试库MetadataWorkspace对于给定的DbContext类型 但是 由于这是一个测试库 我宁愿不连接到数据库 它引入了测试环境中可能无法使用的依赖项 当我尝试获取参考时MetadataWorksp
  • 如何将十六进制字符串转换为无符号长整型?

    我有以下十六进制值 CString str str T FFF000 如何将其转换为unsigned long 您可以使用strtol作用于常规 C 字符串的函数 它使用指定的基数将字符串转换为 long long l strtol str
  • 不区分大小写的字符串比较 C++ [重复]

    这个问题在这里已经有答案了 我知道有一些方法可以进行忽略大小写的比较 其中涉及遍历字符串或一个good one https stackoverflow com questions 11635 case insensitive string

随机推荐

  • 有人可以解释这种行为吗?只需两行代码[重复]

    这个问题在这里已经有答案了 请解释一下这个片段 include
  • Bulbflow:neo4jserver Graph 和 neo4jserver Neo4jclient 之间的区别

    我现在正在尝试学习如何连接到 Neo4j 服务器并使用 Python 中的 Bulbflow 在其上运行 Cypher 查询 我不明白的是连接到 neo4j 服务器的两种可能性之间的区别 1 Graph http bulbflow com
  • 包含 std::string 常量的类

    所以我目前正在使用 C 进行一个学校项目 我对此并不熟悉 我想创建一个类 包含我所有的常量 字符串 整数 双精度 自己的类 我正在尝试这个 这在 Java 中一直对我有用 class Reference Picture Paths publ
  • 使用 TensorFlow 对象检测输出分数、类别和 ID 提取

    如何提取由用于对象检测的 Tensorflow 模型生成的图像中检测到的对象 对象类别 对象 ID 的输出分数 我想将所有这些详细信息存储到单独的变量中 以便以后将它们存储在数据库中 使用与此链接中找到的相同的代码https github
  • 两个日期之间的输出 mysql [关闭]

    很难说出这里问的是什么 这个问题是含糊的 模糊的 不完整的 过于宽泛的或修辞性的 无法以目前的形式得到合理的回答 如需帮助澄清此问题以便重新打开 访问帮助中心 help reopen questions 我需要像这样在MYSQL中输出 记录
  • 在 mongodb 中创建安全数据库

    我想在 mongodb 中创建安全的数据库 安全意味着应用程序必须传递用户名 密码才能连接到我的 mongodb 数据库 来自 Mongo Java 教程 MongoDB 可以在安全模式下运行 其中通过名称和密码身份验证控制对数据库的访问
  • 模拟Android AssetManager

    我有一段代码接受 Context 并将该上下文传递给私有方法 私有方法调用 getAssets open 来读取我的应用程序的资产文件夹中存在的文件 public void methodA Context ctx throws IOExce
  • 将服务器端 MVC 与 Backbone.js 相结合

    我将 NET MVC 用于所有服务器端逻辑并提供初始页面 但我的应用程序在客户端非常繁重 因此我采用了 Backbone JS 事实证明它非常有用 但我不确定如何构建我的系统以整合这两种技术 在我看来 我有两个选择 在服务器端从 MVC 中
  • ios中如何将字节数组转换为图像

    今天我的任务是将字节数组转换为图像 首先 我尝试将图像转换为字节数组 为了将图像转换为字节数组 我们首先要做的就是转换该特定图像 UIImage to NSData 然后我们将其转换为NSData到字节数组 这里我将给出示例代码 只需浏览
  • 为什么enable_shared_from_this有一个非虚拟析构函数?

    我有一个宠物项目 我用它来试验 C 11 的新功能 虽然我有使用 C 的经验 但我对 C 还很陌生 为了训练自己采用最佳实践 除了大量阅读之外 我启用了一些严格的编译器参数 使用 GCC 4 4 1 std c 0x Werror Wall
  • Twig 中的 {{ exception.message }} 不渲染 HTML

    我有这个控制器在哪里 Exception被提出了 我还没弄清楚哪个SF2Exception尚未使用 在一定条件下 就这个
  • Django - 将参数传递给 CBV 装饰器的正确方法?

    文档功能应用装饰器的不错选择 例如login required基于类的视图 https docs djangoproject com en dev topics class based views intro decorating the
  • ANDROID CAMERA:获取参数失败(空参数)

    您好 我仅在棒棒糖以下的操作系统版本中遇到此问题 对此进行了大量搜索 但没有找到正确的解决方案 我认为问题出在操作系统版本上 它在 5 中工作正常 我的代码是 private void setCameraPhotoQuality Camer
  • 设置 li 标签内 的字体颜色

    我的标记如下所示 div class c1 li class c2 a href blah a li div 我希望文字 blah 是红色的 c1 在其他地方使用 所以我想在不影响其他标记的情况下尽可能深入 在您的 css 文件中使用此样式
  • C#:绘制自己的条形图

    我正在尝试通过绘制一个简单的条形图C 但我从未尝试过 Graphics 和 Drawing 命名空间 我想生成一个 开始 和 结束 图形 然后以某种方式重复图像 以显示 长度 但我不知道如何做到这一点 如果您能指出正确的方向和 或您有示例代
  • 尽管包含必需的标头,但仍出现“‘sockaddr_in’未声明(在此函数中首次使用)”错误

    include
  • 如何将列表转换为可枚举

    我的以下代码有问题 public IEnumerable
  • 为什么 php 脚本速度变慢?

    我正在编写迁移脚本 该脚本从一个 MySQL 数据库中选择数据并通过原则导入到另一个 MySQL 数据库中 问题是 在创建每个实体块之后 我的脚本速度就会变慢 导入前 100 篇文章大约需要 5 秒 接下来的 100 篇文章需要 7 秒 接
  • T-SQL 中的随机加权选择

    如何根据所有候选行的应用权重在 T SQL 中随机选择表行 例如 我在表中有一组行的权重分别为 50 25 和 25 加起来为 100 但不是必须的 我想随机选择其中一个 其统计结果相当于相应的行重量 Dane 的答案包括以引入平方律的方式
  • 使用 ionic zip 时压缩失败

    我正在使用最新版本的 ionic zip 版本 1 9 1 8 我已经设置了 ionic zip 的属性ParallelDeflateThreshold 0 过去两个月 压缩机制工作得很好 突然 它停止工作了 压缩线程挂起 ionic zi