在我为我的网站进行负载测试而编写的HTTP flooder中使用libCURL时,我遇到了段错误.
以下是相关代码:https://gist.github.com/AppleDash/a26e0ce0b138cd9eacd2(这里要粘贴一点点.)
这是一个链接到它是segfaulting的行:https://gist.github.com/AppleDash/a26e0ce0b138cd9eacd2#file-httpflood-improved-c-L57
这是段错误的回溯:
#0 0x00007ffff760d65b in fwrite () from /usr/lib/libc.so.6 #1 0x00007ffff79656d8 in ?? () from /usr/lib/libcurl.so.4 #2 0x00007ffff797a76b in ?? () from /usr/lib/libcurl.so.4 #3 0x00007ffff7984349 in ?? () from /usr/lib/libcurl.so.4 #4 0x00007ffff7984b11 in curl_multi_perform () from /usr/lib/libcurl.so.4 #5 0x00007ffff797b977 in curl_easy_perform () from /usr/lib/libcurl.so.4 #6 0x0000000000400f42 in flood (structPointer=0x7fffffffe060) at httpflood.c:57 #7 0x00007ffff7bc5124 in start_thread () from /usr/lib/libpthread.so.0 #8 0x00007ffff768b4bd in clone () from /usr/lib/libc.so.6
我不明白为什么这个电话会导致段错误.有任何想法吗?
我知道你的意思是只提供相关代码的一小部分样本,但在这里我提供了整个事情,因为我觉得这里需要上下文.(事实上,它是从许多线程运行的.)