リクエストが終了した後、カスタム デリゲート オブジェクトを使用していくつかのクリーンアップ タスクを実行しています。ASIHTTPRequest はデリゲートを保持しないため、自動解放できません。現在、これがデリゲートの割り当てと解放の方法です。
アプリ デリゲート
MyDelegate *delegate = [[MyDelegate alloc] init];
ASIHTTPRequest *request = [ASIHTTPRequest requestWithURL:url];
[request setDelegate:delegate];
MyDelegate.m
- (void)requestFinished:(ASIHTTPRequest *)request
{
[self release];
}
- (void)requestFailed:(ASIHTTPRequest *)request
{
[self release];
}
これを行うより良い方法はありますか?デリゲートに自分自身を解放させるのは見苦しく、Xcode のビルドと分析は、私がしていることに違和感を覚えます。