对应socket.cpp 1068-1082代码: // Someone added new requests.
// Reverse the list until old_head.
WriteRequest* tail = NULL;
WriteRequest* p = new_head;
do {
while (p->next == WriteRequest::UNCONNECTED) {
// TODO(gejun): elaborate this
sched_yield();
}
WriteRequest* const saved_next = p->next;
p->next = tail;
tail = p;
p = saved_next;
CHECK(p != NULL);
} while (p != old_head);
二进制程序依赖了mrpc,执行压测时候报错:received signal SIGSEGV, Segmentation fault. [Switching to Thread 0xf9fd3efdeb80 (LWP 76473)] brpc::Socket::IsWriteComplete (this=0xf9fd00025450, this@entry=0x0, old_head=, singular_node=, new_tail=new_tail@entry=0xf9fd3cc2bf68) at brpc/socket.cpp:1073 1073 brpc/socket.cpp: No such file or directory. (gdb) bt full #0 brpc::Socket::IsWriteComplete (this=0xf9fd00025450, this@entry=0x0, old_head=, singular_node=, new_tail=new_tail@entry=0xf9fd3cc2bf68) at brpc/socket.cpp:1073 saved_next = new_head = 0x0 desired = return_when_no_more = tail = 0x0 p = 0x0 #1 0x00000000009c6200 in brpc::Socket::KeepWrite (void_arg=) at brpc/socket.cpp:1673
对应socket.cpp 1068-1082代码: // Someone added new requests.
// Reverse the list until old_head.
WriteRequest* tail = NULL;
WriteRequest* p = new_head;
do {
while (p->next == WriteRequest::UNCONNECTED) {
// TODO(gejun): elaborate this
sched_yield();
}
WriteRequest* const saved_next = p->next;
p->next = tail;
tail = p;
p = saved_next;
CHECK(p != NULL);
} while (p != old_head);
二进制程序依赖了mrpc,执行压测时候报错:received signal SIGSEGV, Segmentation fault. [Switching to Thread 0xf9fd3efdeb80 (LWP 76473)] brpc::Socket::IsWriteComplete (this=0xf9fd00025450, this@entry=0x0, old_head=, singular_node=, new_tail=new_tail@entry=0xf9fd3cc2bf68) at brpc/socket.cpp:1073 1073 brpc/socket.cpp: No such file or directory. (gdb) bt full #0 brpc::Socket::IsWriteComplete (this=0xf9fd00025450, this@entry=0x0, old_head=, singular_node=, new_tail=new_tail@entry=0xf9fd3cc2bf68) at brpc/socket.cpp:1073 saved_next = new_head = 0x0 desired = return_when_no_more = tail = 0x0 p = 0x0 #1 0x00000000009c6200 in brpc::Socket::KeepWrite (void_arg=) at brpc/socket.cpp:1673