Memory zlib压缩数据时的内存分配?

Memory zlib压缩数据时的内存分配?,memory,memory-management,go,compression,zlib,Memory,Memory Management,Go,Compression,Zlib,Go: 假设有10个线程并行运行,每个线程压缩100 MB的数据。每个线程都要压缩100 MB的数据。我使用zlib压缩来压缩数据 假设有一个进程压缩100 MB的数据花费了将近2秒的时间。那么,如果所有并行运行的线程都压缩数据,会发生什么呢 我还需要澄清每个线程的内存分配 案例1: 拥有1GB的RAM内存,现在10个线程将并行运行以启动压缩手段,是否会占用所有RAM内存进行压缩 10 Threads * 100 MB = 1000 (Approx) zlib本身需要的内存量相对较小,每个线

Go:

假设有10个线程并行运行,每个线程压缩100 MB的数据。每个线程都要压缩100 MB的数据。我使用zlib压缩来压缩数据

假设有一个进程压缩100 MB的数据花费了将近2秒的时间。那么,如果所有并行运行的线程都压缩数据,会发生什么呢

我还需要澄清每个线程的内存分配

案例1: 拥有1GB的RAM内存,现在10个线程将并行运行以启动压缩手段,是否会占用所有RAM内存进行压缩

 10 Threads * 100 MB = 1000 (Approx)

zlib本身需要的内存量相对较小,每个线程最多256kb。如果将输入和输出保存在内存中,那么这将由存储输入和输出的内存控制。有关详细信息,请参阅
(寻找“内存占用”主题)。

zlib本身需要的内存量相对较小,每个线程最多256kb。如果将输入和输出保存在内存中,那么这将由存储输入和输出的内存控制。有关详细信息,请参阅
(查找“内存占用”主题)。

只需运行您的程序并读取MemStats或使用gctrace查看具体使用了多少内存。我需要对我的案例进行说明。您需要运行它来了解。您没有提供任何代码,我们也不知道数据是什么样子。没有理由猜测什么时候运行程序并查看结果是简单的。(尽管如此,如果你有1GB的数据和1GB的内存,实际上没有空间做任何事情)只需运行你的程序并读取MemStats或使用gctrace查看到底有多少内存被使用。我需要澄清我的情况。你需要运行它来找出答案。您没有提供任何代码,我们也不知道数据是什么样子。没有理由猜测什么时候运行程序并查看结果是简单的。(不过,如果您正好有1GB的数据和1GB的内存,那么实际上就没有空间做任何事情了)