NSOperation オブジェクトを NSOperationQueue にドロップしようとしています。しかし、NSInvocationOperation (操作キュー内の既存のメソッドを実行したいので、私の目的に合わせて作られたように見えるサブクラス) を適切に初期化する方法を誤解しているようです。これが私が試していることです:
OnlineServiceManager * sm = [[OnlineServiceManager alloc] initWithAsset:asset andViewController:viewController];
NSInvocationOperation * operation = [[NSInvocationOperation alloc] initWithTarget:self selector:@selector(pushAsset) object:sm];
[queue addOperation:operation];
このスタンザは、操作でプッシュされる新しいアセットを提供するループ内で動作しています。これらの行をデバッグすると、操作が nil であることがわかり、セレクターが見つからないことが示唆されます。セレクターは、このクラスのインスタンス メソッドであり、次の署名があります。
- (void)pushAsset
このスタンザもクラス メソッドで動作しています。私の意図は、クラスを呼び出して、すべてのアセットをプッシュするように指示することです。
このケースに関連するすべてのドキュメントを検索しましたが、何が間違っているのかわかりません。