File tree 1 file changed +12
-2
lines changed
1 file changed +12
-2
lines changed Original file line number Diff line number Diff line change @@ -40,14 +40,24 @@ public class DispatchWorkItem {
40
40
internal var _block : _DispatchBlock
41
41
42
42
public init ( qos: DispatchQoS = . unspecified, flags: DispatchWorkItemFlags = [ ] , block: @escaping @convention ( block) ( ) -> ( ) ) {
43
- _block = dispatch_block_create_with_qos_class ( dispatch_block_flags_t ( UInt ( flags. rawValue) ) ,
43
+ #if os(Windows) && arch(x86_64)
44
+ let flags = dispatch_block_flags_t ( UInt32 ( flags. rawValue) )
45
+ #else
46
+ let flags = dispatch_block_flags_t ( UInt ( flags. rawValue) )
47
+ #endif
48
+ _block = dispatch_block_create_with_qos_class ( flags,
44
49
qos. qosClass. rawValue. rawValue, Int32 ( qos. relativePriority) , block)
45
50
}
46
51
47
52
// Used by DispatchQueue.synchronously<T> to provide a path through
48
53
// dispatch_block_t, as we know the lifetime of the block in question.
49
54
internal init ( flags: DispatchWorkItemFlags = [ ] , noescapeBlock: ( ) -> ( ) ) {
50
- _block = _swift_dispatch_block_create_noescape ( dispatch_block_flags_t ( UInt ( flags. rawValue) ) , noescapeBlock)
55
+ #if os(Windows) && arch(x86_64)
56
+ let flags = dispatch_block_flags_t ( UInt32 ( flags. rawValue) )
57
+ #else
58
+ let flags = dispatch_block_flags_t ( UInt ( flags. rawValue) )
59
+ #endif
60
+ _block = _swift_dispatch_block_create_noescape ( flags, noescapeBlock)
51
61
}
52
62
53
63
public func perform( ) {
You can’t perform that action at this time.
0 commit comments