我对网络编程并不熟悉,查看源码如下:
void CCHttpClient::send(CCHttpRequest* request)
{
if (false == lazyInitThreadSemphore())
{
return;
}
if (!request)
{
return;
}
++s_asyncRequestCount;
request->retain();
pthread_mutex_lock(&s_requestQueueMutex);
s_requestQueue->addObject(request);
pthread_mutex_unlock(&s_requestQueueMutex);
// Notify thread start to work
pthread_cond_signal(&s_SleepCondition);
}
明显是把请求(CCHttpRequest)放入队列中排队等待发送。
但是我在转场景是,希望停止之前未进行完的请求,立即发送我新场景需要的请求。
因为新场景需要等待新场景的请求返回内容后才可显示内容,如果队列中请求过多,会严重影响用户体验。
需要题目中所说内容的解决方案 或者 处理我所遇到的问题处理方式。
同问,顶起