python调用.so使用过多出现段错误问题
我用C语言写了一段计算两个python列表相似度的代码,可以使用
python2.7代码(代码正常):
import ctypes
list1 = [[]...]
list2 = [[]...]
tmp = ctypes.cdll.LoadLibrary('./main.so')
lib = tmp.sim
lib.restype = ctypes.c_double
for a in list1:
for b in list2:
sim = lib((ctypes.c_char_p * len(a))(*a), (ctypes.c_char_p * len(b))(*b), ctypes.c_int(len(a)), ctypes.c_int(len(b)))
print sim
当列表比较小的时候程序运行正常,但是当列表比较大的时候,程序运行错误,
C语言的报错信息是:段错误
python的报错信息:Process finished with exit code 139 (interrupted by signal 11: SIGSEGV)
试过网上说的方法,没有解决
望大佬能指点一二
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
太大了溢出了?大的时候有多大啊