Вызов статической библиотеки, написанной на C из проекта iPhone / Objective-C - PullRequest
0 голосов
/ 02 декабря 2011

Я хочу сослаться на мою статическую библиотеку, написанную на C из проекта Objective-C / iPhone, но мне было интересно, можно ли ссылаться на резьбовую функцию из модуля Objective-C?

Меня беспокоит, поскольку функция потока не является частью стандартной библиотеки C, в процессе компиляции может возникнуть неразрешенная связь.

Любые мысли / советы будут высоко оценены.

Спасибо

1 Ответ

2 голосов
/ 02 декабря 2011

Threading не имеет абсолютно никакого отношения к связыванию.Потоки - это процесс одновременного запуска нескольких веток кода (виртуально; если имеется несколько процессоров и / или несколько ядер процессоров, то фактически становится буквально).Связывание - это поиск функций в библиотеке, чтобы ваш код мог их вызывать.Между этими двумя понятиями нет никакой связи, за исключением единственного связывания библиотеки, которая обеспечивает поддержку многопоточности (о которой вам не нужно заботиться, поскольку XCode уже делает это).

Есть несколько записей в блоге, которые объясняюткак связать статическую библиотеку с вашим проектом.

Если вы обеспокоены тем, что библиотека не является поточно-ориентированной, вам нужно обязательно использовать NSLock вокруг каждого вызова функций из этой библиотеки.См., Например, эту статью о том, что такое NSLock и зачем вам это нужно.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...