簡體   English   中英

當我再次遇到特定對象時,如何最好地識別它們?

[英]How would I best go about identifying specific objects when I come across them again?

以NSURLSession的任務對象為例:

NSURLSession *session = [NSURLSession sessionWithConfiguration:[NSURLSessionConfiguration defaultSessionConfiguration] delegate:self delegateQueue:nil];

NSURLSessionDataTask *dataTask1 = [session dataTaskWithURL:[NSURL URLWithString:@"http://i.imgur.com/RARAP1J.jpg"]];

如果我使用以下委托方法:

- (void)URLSession:(NSURLSession *)session dataTask:(NSURLSessionDataTask *)dataTask didReceiveData:(NSData *)data {
    ....

如果最終創建了一堆NSURLSessionDataTasks ,我將如何檢查哪個dataTask引用。 當然,我可以擁有很多屬性,但是如果我有50個任務,那將變得不規則,我希望能夠在代碼中自動進行設置。

我知道taskIdentifier方法可以工作,但是它是readonly ,我希望能夠進行設置。

您可以在NSURLSessionTask.description放入任何您喜歡的NSURLSessionTask.description 我什至使用NSJSONSerialization在其中填充NSDictionary (在評論中提問,我將發布代碼)。 我可以驗證它在任務的后台序列化后仍然存在。

您也可以只在類中保留NSMutableDictionary ivar,映射taskIdentifier =>任意信息,並在任務完成后刪除條目。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM