我从 Nodejs 调用 Perl 脚本并收到如下错误:
Attempt to free unreferenced scalar: SV 0x15810d8 during global destruction.
Attempt to free unreferenced scalar: SV 0x15810d8 during global destruction.
Attempt to free unreferenced scalar: SV 0x15cffb8 during global destruction.
Attempt to free unreferenced scalar: SV 0x15cffb8 during global destruction.
Segmentation fault
谁能告诉我这是什么类型的错误以及如何调试它,因为它只是结束 Node 进程而没有提供任何有值(value)的信息。
最佳答案
实际上,它相当于 Perl/XS 中的 double-free()
bug。它表明某些 SV 已从 XS 代码中取消引用两次(可能是在某些清理期间一次,然后在语句之间的 FREETMPS
期间再次取消引用)。这表明您调用的某些 XS 代码中存在某种错误;可能间接地向下几层。
关于node.js - 这个错误 “Attempt to free unreferenced scalar”是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24382541/