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 です)

どうすればキューから削除できますか? または、downloadQueue の正しい操作数を取得するにはどうすればよいですか?

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 に答える