私はすでに2日間私のコードで何が間違っているかを理解しようとしています。アイデアがあることを願っていますか?NSOperation in global queue
私は "global"キューとしてNSOperationQueueを作成して、そのviewController内のどのメソッドからでも操作を追加できるようにしようとしています。グローバルにするために.hファイルにキューを定義しようとする前に、私はそれを最初に必要としたメソッドの中に作成し、Operationsを追加することができました。これはうまくいった。しかし、元のメソッドの外側からキュー内にアクティブな操作があるかどうかを確認したいのですが、メソッドの中で宣言していたので、明らかにできませんでした。だから私は、次のコードでの.hにそれを宣言しようとした:
@property (strong, nonatomic) NSOperationQueue *queue;
と.mファイルの先頭に:
@synthesize queue;
これは私がキューにオペレーションを追加したコードです。
NSInvocationOperation *doMorse = [[NSInvocationOperation alloc] initWithTarget:self selector:@selector(morse) object:nil];
[self.queue addOperation:doMorse];
問題は、操作を追加しようとするとキューが空のままであることです。 (以前は正常に動作していました)キューが間違っていると宣言しましたか?ちなみに、私が試した方法以外の方法でキューにアクセスできるようにするには、より良い解決策がありますか? (同じviewController(任意のビューからうまくいくならそれはすばらしいでしょう:-))))。
ありがとうございました!
実行中のARCでは、デフォルトでイーバールが強くなります。しかしプロパティは弱いですあなたの財産を強いと宣言しているか、古い学校のままにしておいてください。 –
待ち行列 'nil'はおそらくありますか? –
どうすればわかりますか? – Linus