Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/378.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
Java 分配大型阵列时发生SIGSEGV错误_Java_Android_Arrays_Segmentation Fault - Fatal编程技术网

Java 分配大型阵列时发生SIGSEGV错误

Java 分配大型阵列时发生SIGSEGV错误,java,android,arrays,segmentation-fault,Java,Android,Arrays,Segmentation Fault,我想分配一个大尺寸的浮点数组: float AudioData[] = new float[numSamples]; 但我在android studio中遇到了这个错误: SIGSEGV (signal SIGSEGV: invalid address (fault address: 0xc)) 我知道这是因为堆栈溢出,我必须将数组移到其他地方 问题是如何将数组移动到堆?通常如何处理它?numSamples有多大?您确定它是堆栈故障吗?numSamples在这种情况下是18000000。它可

我想分配一个大尺寸的浮点数组:

float AudioData[] = new float[numSamples];
但我在android studio中遇到了这个错误:

SIGSEGV (signal SIGSEGV: invalid address (fault address: 0xc))
我知道这是因为堆栈溢出,我必须将数组移到其他地方


问题是如何将数组移动到堆?通常如何处理它?

numSamples有多大?您确定它是堆栈故障吗?
numSamples
在这种情况下是18000000。它可以完美地处理较小的数字。较大的对象分配将引发内存不足的java错误,而不是操作系统SIGSEGV。您的问题可能在其他地方。
numSamples
有多大?您确定这是堆栈故障吗?
numSamples
在这种情况下是18000000。它可以完美地处理较小的数字。较大的对象分配将引发内存不足的java错误,而不是操作系统SIGSEGV。你的问题可能在别的地方