首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >大中央调度,调度WorkItem标志

大中央调度,调度WorkItem标志
EN

Stack Overflow用户
提问于 2019-03-06 20:31:44
回答 3查看 170关注 0票数 0

以下哪一项:

代码语言:javascript
复制
 public static let barrier: DispatchWorkItemFlags
 public static let detached: DispatchWorkItemFlags
 public static let assignCurrentContext: DispatchWorkItemFlags
 public static let noQoS: DispatchWorkItemFlags
 public static let inheritQoS: DispatchWorkItemFlags
 public static let enforceQoS: DispatchWorkItemFlags

是默认的DispatchWorkItemFlag吗?

EN

回答 3

Stack Overflow用户

发布于 2019-03-06 20:35:37

这些选项中的每一个都有自己的含义,没有一个默认选项。

因此,您可能会问DispatchWorkIteminit(qos:flags:block:) (item的属性)或其notify(qos:flags:queue:execute:)方法的默认参数是什么。

因此,对于文档,默认参数为空OptionSet

票数 2
EN

Stack Overflow用户

发布于 2019-03-06 20:49:21

快速回答:全部,都不是。

DispatchWorkItemFlags 是一个选项集,用于配置DispatchWorkItem value的行为,包括其服务质量级别以及是创建屏障还是生成新的分离线程。

当您将作业添加到队列中时,DispatchWorkItemFlags为我们提供了几个选项可供选择:

代码语言:javascript
复制
public func sync<T>(flags: DispatchWorkItemFlags, execute work: () throws -> T) 

    rethrows -> T

public static let barrier: DispatchWorkItemFlags
public static let detached: DispatchWorkItemFlags
public static let assignCurrentContext: DispatchWorkItemFlags

DISPATCH_BLOCK_ASSIGN_CURRENT指示应该为分派块分配创建块对象时当前的执行上下文属性。…

DISPATCH_BLOCK_BARRIER指示调度块在提交到DISPATCH_QUEUE_CONCURRENT队列时应充当屏障块。…

DISPATCH_BLOCK_DETACHED指示分派块应该与当前执行上下文属性(如QoS类、os_activity_t和当前IPC请求的属性,如果有的话)不关联地执行。…

我希望它能帮上忙!

祝你有愉快的一天!

票数 1
EN

Stack Overflow用户

发布于 2019-03-06 21:08:32

通常的答案在文档中:)

初始化(qos: DispatchQoS = .unspecified,标志: DispatchWorkItemFlags = [],block:@escaping () ->空)

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/55023191

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档