2

操作が で開始/実行されようとしているかどうか/いつ確認できる方法はありNSOperationQueueますか? 私は使用NSURLConnection's setDelegateQueue:していますが、いつ起動するかを知る必要があります。

4

2 に答える 2

0

NSOperation サブクラスで、willStartBlock のコピー プロパティを追加します。メインの開始時 (他のアクションの前) に、このブロックが設定されている場合は呼び出します。

このようにして、操作を作成すると同時に、操作キューに入れる前に、操作が開始されたときに実行するアクションを設定できます。

特定の質問の問題は、キューで作成された操作を作成しないことです。NSOperationQueue をサブクラス化して、3 つのパブリックな addOperation* メソッドをオーバーライドすることができます。運が良ければ、これらの 1 つが NSURLConnection がコールバック操作をキューに追加するために使用するものです。

于 2013-01-14T06:41:54.360 に答える
0

私はあなたが何をしたいのかを正確に知ることができます.

あなたの質問からは明らかではないので、何を達成したいのかわかりませんが、次のようなことができます:

currentConnection = [[NSURLConnection alloc] initWithRequest:request delegate:self startImmediately:NO];
if (self.operationQueue) {
    [currentConnection setDelegateQueue:self.operationQueue];
}        
[currentConnection start];

start メソッドが呼び出されると、NSURLConnection が呼び出されます。NSOperation をサブクラス化し、start メソッドをオーバーライドすることもできます。

于 2013-01-15T19:41:11.513 に答える