中断系统调用posix_memalign
我正在使用posix_memalign获得此exception。 知道为什么我们得到它吗?
提前致谢。
中断的系统调用通常是系统调用中断的结果。 换句话说,该过程在呼叫执行时接收信号。
问题得到解决:问题是对齐边界应该是2和sizeof(void *)
的倍数。 所以如果posinter size是4个字节,那么第二个参数应该是4,8,16等。而不是我把它作为2的倍数,因此它崩溃了。
Wrong usage: crashes posix_memalign(&addr, 2, 8); Correct usage: posix_memalign(&addr, 4, 8); // Second argument multiple of void* and 2