2

并发编程指南这样说:

您不能自己创建并发调度队列。相反,有三个全局并发队列供您的应用程序使用。

然后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

同样重要的是要注意,即使在 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 的各个“章节”上调出查找器,请使用查找器进入每个目录,然后单击您想要了解更多信息的 API 的每个类别的 Index.html 文件。这还将为每个 API 函数提供 iOS 和 OS X 的明确可用性信息。!

于 2012-08-11T22:59:25.547 回答