Тайм-аут для вызова функции CAN init C / C ++ в Swift 5 - PullRequest
0 голосов
/ 29 июня 2019

Я разрабатываю приложение, которое использует библиотеку PCBUSB для использования шины CAN на macOS с устройством PEAK-USB. Я решил написать приложение в Swift 5, используя заголовок оболочки PCBUSB.h, который поставляется с libPCBUSB.dylib. Эта библиотека была разработана UV Software, Berlin (http://www.mac -can.com ).

На данный момент все работает отлично, за исключением того, что когда устройство подключено к моему Mac, но не подключено к какой-либо шине CAN, через некоторое время соединение не устанавливается, и этот вызов функции блокируется основным потоком, пока не будет получен ответ.

То, что я ищу, это способ тайм-аута вызова этой функции C / C ++ в моем быстром коде. Например, вызовите это в будущем или в потоке времени ожидания. Я просто не могу найти никакого удовлетворительного примера, как этого добиться.

Любая помощь будет оценена,

Clovel

PS: я новичок в Swift, создав только примеры приложений для моего Mac или для iOS. Это мой первый серьезный проект Swift. Вполне возможно, что ответ очевиден, и я просто пропустил его.

...