Skip to content

[SR-1770] DispatchQoS can't be used to initialize a DispatchQueue #745

@glessard

Description

@glessard
Previous ID SR-1770
Radar rdar://problem/26879343
Original Reporter @glessard
Type Bug
Status Closed
Resolution Done
Environment

Xcode 8 (beta, 8S128d) with Swift 3.0 preview 1

Additional Detail from JIRA
Votes 0
Component/s libdispatch
Labels Bug
Assignee mww (JIRA)
Priority Medium

md5: b72edfc14216b508eb2396a9de513141

Issue Description:

DispatchQoS is used as a parameter on DispatchQueue.async and others, but can't be used as a parameter to initialize or obtain DispatchQueue instances. On the other hand, DispatchQueueAttributes contains some DispatchQoS information, but one cannot be initialized using a DispatchQoS instance.

DispatchQueue.global() and DispatchQueue.init() should have overloads with DispatchQoS parameters.
DispatchQueueAttributes.init() should have an overload that accepts a DispatchQoS parameter:

extension DispatchQueue {
  init(qos: DispatchQoS, attributes: DispatchQueueAttributes)
  class func global(qos: DispatchQoS, attributes: DispatchQueue.GlobalAttributes) -> DispatchQueue
}
extension DispatchQueueAttributes {
  // replacing dispatch_queue_attr_make_with_qos_class
  init(qos: DispatchQoS, attributes: DispatchQueueAttributes)
}

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions