42 int XrdPssAioCB::numFree = 0;
43 int XrdPssAioCB::maxFree = 100;
56 if ((newCB = freeCB)) {freeCB = newCB->next; numFree--;}
62 newCB->theAIOP = aiop;
63 newCB->isWrite = isWr;
81 theAIOP->Result = (result < 0 ? -errno : result);
85 if (isPGrw && result >= 0)
89 if (
csVec.size() && theAIOP->cksVec)
90 memcpy(theAIOP->cksVec,
csVec.data(),
csVec.size()*
sizeof(uint32_t));
96 if (isWrite) theAIOP->doneWrite();
97 else theAIOP->doneRead();
113 if (numFree >= maxFree)
delete this;
std::vector< uint32_t > csVec
virtual void Complete(ssize_t Result)
static XrdPssAioCB * Alloc(XrdSfsAio *aiop, bool isWr, bool pgrw=false)