This file是GoAhead WebServer的一部分,它實現了非常快的塊分配方案。爲什麼我在這裏獲取內存訪問衝突?
在第284行,Web服務器進程隨機崩潰。
} else if ((bp = bQhead[q]) != NULL) {
/*
* Take first block off the relevant q if non-empty
*/
bQhead[q] = bp->u.next; //MEMORY ACCESS VIOLATION HERE
這有什麼可能的原因?
EDIT
bp的是一個指向這個結構和聯合在this header file
typedef struct {
union {
void *next; /* Pointer to next in q */
int size; /* Actual requested size */
} u;
int flags; /* Per block allocation flags */
} bType;
感謝。
你是什麼?我們需要更多的信息 – Mark 2011-01-25 19:29:48
當然你已經知道可能的原因是什麼。當您處理不在您的進程中的內存時,會發生AV。 – 2011-01-25 19:36:31