无法从捕获通用参数的闭包形成C函数指针

时间:2017-06-12 09:08:45

标签: objective-c swift generics

我需要创建IOServiceMatchingCallback来检测我的USB设备,但是当我这样做时:

public class myMonitor<T:myDevice>: NSObject {
    function initUsb() {
         let removalCallback: IOServiceMatchingCallback = {
                (userData, iterator) in
                let this = Unmanaged<myMonitor>
                    .fromOpaque(userData!).takeUnretainedValue()
                this.rawDeviceRemoved(iterator: iterator)
            }
    }

}

编译说:

  

无法从捕获的闭包形成C函数指针   通用参数

当我使用非泛型类时它工作正常。如何将通用对象传递给Unmanaged ??

0 个答案:

没有答案