2

Concurrency Programming Guideには、次のように書かれています。

同時ディスパッチ キューを自分で作成することはできません。代わりに、アプリケーションが使用する 3 つのグローバル同時キューがあります。

次に、GCDリファレンスガイドには次のように書かれています:

dispatch_queue_create()

OS X v10.7 以降では、DISPATCH_QUEUE_SERIAL(またはNULL) を指定してシリアル キューを作成するか、指定DISPATCH_QUEUE_CONCURRENTしてコンカレント キューを作成します。

これは少し紛らわしいです。実際に並行キューを自分で作成できることを意味します。現在の機能を説明するためにドキュメントが更新されていないということですか?

4

2 に答える 2

1

リンク先のドキュメントは、iOS ではシリアル キューしか作成できないと言っています。OSX では、シリアル キューまたはコンカレント キューを作成できます。

これは iOS5 以降では古くなっているようです.. (@omz と @Analog File に感謝)

于 2012-08-11T09:52:26.710 に答える
0

man ページは 10.8 (Mountain Lion) でも少し古く、API の進化に伴う GCD へのすべての変更を文書化していないことに注意することも重要です。幸いなことに、GCD ヘッダー ファイル自体の HeaderDoc コメントは熱心に維持されており、決定的なリファレンスとして残っています。使い方?コマンドラインで救出!

% mkdir /tmp/gcd-docs
% headerdoc2html -o /tmp/gcd-docs /usr/include/dispatch

headerdoc2html からの恐ろしいメッセージをすべて無視し、終了したら:

% open /tmp/gcd-docs

GCD のさまざまな「章」でファインダーを表示するには、Finder で各ディレクトリに降りてから、詳細情報が必要な API の各カテゴリの Index.html ファイルをクリックします。これにより、各 API 関数の iOS および OS X の可用性に関する決定的な情報も得られます。チッ!

于 2012-08-11T22:59:25.547 に答える