1

这是我用来取消下载的代码。

    NSArray *queueArray =  [downloadQueue operations];
    for (ASIHTTPRequest *request in queueArray) {
        NSString *objid = [request.userInfo objectForKey:Column_objectid];
        if ([objid isEqualToString:audioToDelete.objectId]) {
            [request clearDelegatesAndCancel];
            [request removeTemporaryDownloadFile];
            ...}}

但是在我调用
[request clearDelegatesAndCancel]之后

downloadQueue.operations 或 downloadQueue.requestsCount 仍然是相同的计数(downloadQueue 是我的 ASINetworkQueue)

我怎样才能从队列中删除它?或者我怎样才能得到我的下载队列的正确操作计数?

4

1 回答 1

2

做这个:

NSArray *queueArray =  [downloadQueue operations];
for (ASIHTTPRequest *request in queueArray) {
    NSString *objid = [request.userInfo objectForKey:Column_objectid];
    if ([objid isEqualToString:audioToDelete.objectId]) {
        [request cancel];
    }
 }
于 2012-10-04T04:28:40.340 回答