本文整理汇总了C++中DataBuffer::increaseDataLength方法的典型用法代码示例。如果您正苦于以下问题:C++ DataBuffer::increaseDataLength方法的具体用法?C++ DataBuffer::increaseDataLength怎么用?C++ DataBuffer::increaseDataLength使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类DataBuffer
的用法示例。
在下文中一共展示了DataBuffer::increaseDataLength方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: testSocket
// ---------------------------------------------
void testSocket(string ip, unsigned short port) {
Socket* socket = new Socket("null", 0);
Socket::InetAddressPort remoteAddrAndPort;
remoteAddrAndPort.port = port;
Socket::getSockaddrByIpAndPort(&remoteAddrAndPort.addr, ip, port);
socket->makeNonBlocking();
while (true) {
bool result = socket->connect(remoteAddrAndPort);
if (result) {
cout << "connect success!" << endl;
cm::Thread::sleep(100);
char sendData[] = "TCP client request";
int numberOfBytesSent;
if (SKT_SUCC == socket->send(sendData, strlen(sendData), numberOfBytesSent)) {
assert(numberOfBytesSent == strlen(sendData));
cout << "send " << numberOfBytesSent << " bytes data complete" << endl;
DataBuffer* response = new DataBuffer();
int numOfBytesRecved = 0;
while (true) {
result = socket->recv(response->getEndOfDataPointer(), response->getSize() - response->getLength(), numOfBytesRecved);
assert(result != SKT_ERR);
if (result == SKT_SUCC) {
assert(numOfBytesRecved != 0);
response->increaseDataLength(numOfBytesRecved);
cout << "recv " << numOfBytesRecved << " bytes data: " << response->getData() << endl;
response->reset();
break;
} else {
cm::Thread::sleep(1);
}
}
}
socket->close();
break;
} else {
cm::Thread::sleep(1);
}
}
}