Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/145.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ Lame_enc线程安全吗?_C++ - Fatal编程技术网

C++ Lame_enc线程安全吗?

C++ Lame_enc线程安全吗?,c++,C++,我需要知道lame_enc线程是否安全?不确定它是如何实现的,但有一种方法可以使用多个线程来提高编码过程 看 更新: 测试称,他们使用Lame MT(多线程)对CPU进行基准测试。我想这是另一个证据,lame编码可以在单独的线程中完成。您可能希望将文件分为几个块,并在单独的管道中处理它们。从LAME 3.99.5开始: THREADSAFE: Lame现在应该是线程安全的和可重入的。 唯一的问题似乎是一些操作系统的分配太小 堆栈(

我需要知道lame_enc线程是否安全?

不确定它是如何实现的,但有一种方法可以使用多个线程来提高编码过程

更新:

测试称,他们使用
Lame MT
(多线程)对CPU进行基准测试。我想这是另一个证据,lame编码可以在单独的线程中完成。您可能希望将文件分为几个块,并在单独的管道中处理它们。

从LAME 3.99.5开始:

THREADSAFE:
Lame现在应该是线程安全的和可重入的。
唯一的问题似乎是一些操作系统的分配太小
堆栈(<128K)到应用程序启动的线程,以及
这对瘸子来说是不够的。修复方法是增加堆栈空间,
或者使用
通过使用bug证明malloc()和free()。

您是否尝试过该文档?是的..我发现“虽然该接口设计为能够处理多个并行流,但由于引擎的限制,它还不能完成,只允许一个流。”感谢您有用的回答:)但我无法下载Lame MTI对“Lame_enc”进行了一次重大测试通过让多个线程调用它,它看起来是安全的。唯一遇到的问题是编码过程中消耗了大量内存
THREADSAFE:

Lame should now be thread safe and re-entrant. 
The only problem seems to be some OS's allocate small
stacks (< 128K) to threads launched by applictions, and this
is not enough for LAME.  Fix is to increase the stack space,
or move some of our automatic variables onto the heap with
by using bug-prove malloc()'s and free().