Ссылка CFHost
Наследование
Не применимый
Соответствует
Не применимый
Оператор импорта
Swift
import CFNetwork
Objective C
@import CFNetwork;
API CFHost позволяет, Вы для создания экземпляров CFHost возражаете, что можно использовать для получения информации об узле, включая имена, адреса и информацию о достижимости.
Процесс получения информации об узле известен как разрешение. Начните путем вызова CFHostCreateWithAddress или CFHostCreateWithName создать экземпляр CFHost использование адреса или имени, соответственно. Если Вы хотите разрешить узел асинхронно. вызвать CFHostSetClient связать Ваш клиентский контекст и определяемую пользователем функцию обратного вызова с узлом. Тогда вызовите CFHostScheduleWithRunLoop запланировать узел на цикл выполнения.
Для запуска разрешения вызвать CFHostStartInfoResolution. Если Вы устанавливаете для асинхронного разрешения, CFHostStartInfoResolution возвраты сразу. Когда разрешение будет завершено, Вашу функцию обратного вызова вызовут. Если Вы не устанавливали для асинхронного разрешения, CFHostStartInfoResolution блоки до разрешения завершены, ошибка происходит, или разрешение отменяется.
Когда разрешение будет завершено, вызвать CFHostGetAddressing или CFHostGetNames получить массив известных адресов или известных имен, соответственно, для узла. Вызвать CFHostGetReachability получить флаги, объявленные в SystemConfiguration/SCNetwork.h, это описывает достижимость узла.
Когда Вам больше не будет нужен объект CFHost, вызвать CFHostUnscheduleFromRunLoop и CFHostSetClient разъединять узел с Вашим определяемым пользователем клиентским контекстом и функцией обратного вызова (если это было установлено для асинхронного разрешения). Тогда избавьтесь от него.
-
Создает новый объект хоста путем копирования.
Объявление
Swift
func CFHostCreateCopy(_alloc: CFAllocator!, _addr: CFHost!) -> Unmanaged<CFHost>!Objective C
CFHostRef CFHostCreateCopy ( CFAllocatorRef alloc, CFHostRef host );Параметры
allocСредство выделения для использования для выделения памяти для нового объекта. Передача
NULLилиkCFAllocatorDefaultиспользовать текущее средство выделения по умолчанию.addrУзел копии. Это значение не должно быть
NULL.Возвращаемое значение
Допустимый CFHost возражает или
NULLесли не могла бы быть создана копия. Новый узел содержит копию всех ранее разрешенных данных от исходного узла. Владение соблюдает Создать Правило.Специальные замечания
Эта функция ориентирована на многопотоковое исполнение.
Оператор импорта
Objective C
@import CFNetwork;Swift
import CFNetworkДоступность
Доступный в iOS 2.0 и позже.
-
Использует адрес для создания экземпляра объекта хоста.
Объявление
Swift
func CFHostCreateWithAddress(_alloc: CFAllocator!, _addr: CFData!) -> Unmanaged<CFHost>!Objective C
CFHostRef CFHostCreateWithAddress ( CFAllocatorRef allocator, CFDataRef addr );Параметры
allocСредство выделения для использования для выделения памяти для нового объекта. Передача
NULLилиkCFAllocatorDefaultиспользовать текущее средство выделения по умолчанию.addrОбъект CFDataRef, содержащий a
sockaddrструктура для адреса узла. Это значение не должно бытьNULL.Возвращаемое значение
Допустимый объект CFHostRef, который может быть разрешен, или
NULLесли не мог бы быть создан узел. Владение соблюдает Создать Правило.Обсуждение
Вызвать
CFHostStartInfoResolutionразрешить имя эхо-сигнала и информацию о достижимости.Специальные замечания
Эта функция ориентирована на многопотоковое исполнение.
Оператор импорта
Objective C
@import CFNetwork;Swift
import CFNetworkДоступность
Доступный в iOS 2.0 и позже.
-
Использует имя для создания экземпляра объекта хоста.
Объявление
Swift
func CFHostCreateWithName(_alloc: CFAllocator!, _hostname: CFString!) -> Unmanaged<CFHost>!Objective C
CFHostRef CFHostCreateWithName ( CFAllocatorRef allocator, CFStringRef hostname );Параметры
allocСредство выделения для использования для выделения памяти для нового объекта. Передача
NULLилиkCFAllocatorDefaultиспользовать текущее средство выделения по умолчанию.hostnameСтрока, представляющая имя узла. Это значение не должно быть
NULL.Возвращаемое значение
Допустимый объект CFHostRef, который может быть разрешен, или
NULLесли не мог бы быть создан узел. Владение соблюдает Создать Правило.Обсуждение
Вызвать
CFHostStartInfoResolutionразрешить адреса объекта и информацию о достижимости.Специальные замечания
Эта функция ориентирована на многопотоковое исполнение.
Оператор импорта
Objective C
@import CFNetwork;Swift
import CFNetworkДоступность
Доступный в iOS 2.0 и позже.
-
Отменяет разрешение узла.
Объявление
Swift
func CFHostCancelInfoResolution(_theHost: CFHost!, _info: CFHostInfoType)Objective C
void CFHostCancelInfoResolution ( CFHostRef theHost, CFHostInfoType info );Параметры
theHostУзел, для которого должно быть отменено разрешение. Это значение не должно быть
NULL.infoЗначение типа
CFHostInfoTypeуказание типа разрешения, которое должно быть отменено. Посмотрите Константы CFHostInfoType для возможных значений.Обсуждение
Эта функция отменяет асинхронное или синхронное разрешение, указанное
infoдля узла, указанногоtheHost.Специальные замечания
Эта функция ориентирована на многопотоковое исполнение.
Оператор импорта
Objective C
@import CFNetwork;Swift
import CFNetworkДоступность
Доступный в iOS 2.0 и позже.
-
Получает адреса от узла.
Объявление
Swift
func CFHostGetAddressing(_theHost: CFHost!, _hasBeenResolved: UnsafeMutablePointer<Boolean>) -> Unmanaged<CFArray>!Objective C
CFArrayRef CFHostGetAddressing ( CFHostRef theHost, Boolean *hasBeenResolved );Параметры
theHostCFHost, адреса которого должны быть получены. Это значение не должно быть
NULL.hasBeenResolvedПо возврату, указателю на булевскую переменную, которая является
TRUEесли адреса были доступны иFALSEесли адреса не были доступны. Этот параметр может быть нулем.function resultCFArray адресов, где адрес является a
sockaddrструктура, обернутая CFDataRef или нулем, если никакие адреса не были доступны.Обсуждение
Эта функция получает адреса от CFHost. CFHost, должно быть, был ранее разрешен. Для разрешения CFHost вызвать
CFHostStartInfoResolution.Специальные замечания
Эта функция получает адреса ориентированным на многопотоковое исполнение способом, но получающиеся данные не ориентированы на многопотоковое исполнение. Данные возвращаются как то, «чтобы получать» в противоположность копии, таким образом, данные не безопасны, если CFHost изменен от другого потока.
Оператор импорта
Objective C
@import CFNetwork;Swift
import CFNetworkДоступность
Доступный в iOS 2.0 и позже.
-
Получает имена от CFHost.
Объявление
Swift
func CFHostGetNames(_theHost: CFHost!, _hasBeenResolved: UnsafeMutablePointer<Boolean>) -> Unmanaged<CFArray>!Objective C
CFArrayRef CFHostGetNames ( CFHostRef theHost, Boolean *hasBeenResolved );Параметры
theHostУзел для исследования. Узел, должно быть, был ранее разрешен. (Для разрешения узла вызвать
CFHostStartInfoResolution.) Это значение не должно бытьNULL.hasBeenResolvedПо возврату, содержит
TRUEесли имена были доступны, иначеFALSE. Это значение может бытьNULL.Возвращаемое значение
Массив, содержащий имен
theHost, илиNULLесли никакие имена не были доступны.Специальные замечания
Эта функция получает имена ориентированным на многопотоковое исполнение способом, но получающиеся данные не ориентированы на многопотоковое исполнение. Данные возвращаются как то, «чтобы получать» в противоположность копии, таким образом, данные не безопасны, если CFHost изменен от другого потока.
Оператор импорта
Objective C
@import CFNetwork;Swift
import CFNetworkДоступность
Доступный в iOS 2.0 и позже.
-
Получает информацию достижимости от узла.
Объявление
Swift
func CFHostGetReachability(_theHost: CFHost!, _hasBeenResolved: UnsafeMutablePointer<Boolean>) -> Unmanaged<CFData>!Параметры
theHostУзел, достижимость которого должна быть получена. Узел, должно быть, был ранее разрешен. (Для разрешения узла вызвать
CFHostStartInfoResolution.) Это значение не должно бытьNULL.hasBeenResolvedПо возврату, содержит
TRUEесли достижимость была доступна, иначеFALSE. Это значение может бытьNULL.Возвращаемое значение
CFData возражает, что обертывает флаги достижимости (
SCNetworkConnectionFlags) определенный вSystemConfiguration/SCNetwork.h, илиNULLесли информация о достижимости не была доступна.Специальные замечания
Эта функция получает информацию достижимости ориентированным на многопотоковое исполнение способом, но получающиеся данные не ориентированы на многопотоковое исполнение. Данные возвращаются как то, «чтобы получать» в противоположность копии, таким образом, данные не безопасны, если CFHost изменен от другого потока.
Оператор импорта
Objective C
@import CFNetwork;Swift
import CFNetworkДоступность
Доступный в iOS 2.0 и позже.
-
Запускает разрешение для объекта хоста.
Объявление
Swift
func CFHostStartInfoResolution(_theHost: CFHost!, _info: CFHostInfoType, _error: UnsafeMutablePointer<CFStreamError>) -> BooleanObjective C
Boolean CFHostStartInfoResolution ( CFHostRef theHost, CFHostInfoType info, CFStreamError *error );Параметры
theHostУзел, полученный путем предыдущего вызова
CFHostCreateCopy,CFHostCreateWithAddress, илиCFHostCreateWithName, это должно быть разрешено. Это значение не должно бытьNULL.infoЗначение типа
CFHostInfoTypeуказание типа информации, которая должна быть получена. Посмотрите Константы CFHostInfoType для возможных значений.errorУказатель на a
CFStreamErrorструктура, что, если ошибка происходит, установлена в ошибку и домен ошибки. В синхронном режиме ошибка указывает, почему разрешение, неработающее, и в асинхронном режиме, ошибка указывает, почему разрешению не удалось запуститься.Возвращаемое значение
TRUEесли разрешение было запущено (асинхронный режим);FALSEесли другое разрешение уже происходит дляtheHostили если произошла ошибка.Обсуждение
Эта функция получает информацию, указанную
infoи хранилища это в узле.В синхронном режиме это завершились функциональные блоки до разрешения, когда возвращается эта функция
TRUE, пока разрешение не останавливается путем вызоваCFHostCancelInfoResolutionот другого потока, когда возвращается эта функцияFALSE, или пока ошибка не происходит.Специальные замечания
Эта функция ориентирована на многопотоковое исполнение.
Оператор импорта
Objective C
@import CFNetwork;Swift
import CFNetworkДоступность
Доступный в iOS 2.0 и позже.
-
Связывает клиентский контекст, и функция обратного вызова с CFHost возражают, или разъединяет ранее установленные клиентский контекст и функцию обратного вызова.
Объявление
Swift
func CFHostSetClient(_theHost: CFHost!, _clientCB: CFHostClientCallBack, _clientContext: UnsafeMutablePointer<CFHostClientContext>) -> BooleanObjective C
Boolean CFHostSetClient ( CFHostRef theHost, CFHostClientCallBack clientCB, CFHostClientContext *clientContext );Параметры
theHostУзел для изменения. Значение не должно быть
NULL.clientCBФункция обратного вызова для соединения с
theHost. Когда разрешение завершится или будет отменено, функцию обратного вызова вызовут. Если Вы вызываете эту функцию для разъединения клиентского контекста и обратного вызова отtheHost, pclientCBзадницаNULL.clientContextA
CFHostClientContextструктура, чейinfoполе будет передано функции обратного вызова, указаннойclientCBкогдаclientCBвызывается. Это значение не должно бытьNULLпри установке ассоциации.Передача
NULLпри разъединении клиентского контекста и обратного вызова от узла.Возвращаемое значение
TRUEесли ассоциация могла бы быть установлена или сброшена, иначеFALSE.Обсуждение
Функция обратного вызова, указанная
clientCBкогда разрешение завершится или будет отменено, будет вызван.Специальные замечания
Эта функция ориентирована на многопотоковое исполнение.
Оператор импорта
Objective C
@import CFNetwork;Swift
import CFNetworkДоступность
Доступный в iOS 2.0 и позже.
-
Планирует CFHost на цикл выполнения.
Объявление
Swift
func CFHostScheduleWithRunLoop(_theHost: CFHost!, _runLoop: CFRunLoop!, _runLoopMode: CFString!)Objective C
void CFHostScheduleWithRunLoop ( CFHostRef theHost, CFRunLoopRef runLoop, CFStringRef runLoopMode );Параметры
theHostУзел, чтобы быть расписанием на цикле выполнения. Это значение не должно быть
NULL.runLoopЦикл выполнения, на который можно запланировать
theHost. Это значение не должно бытьNULL.runLoopModeРежим, на который можно запланировать
theHost. Это значение не должно бытьNULL.Обсуждение
Расписания
theHostна цикле выполнения, заставляющем разрешения узла выполняться асинхронно. Вызывающая сторона ответственна за обеспечение, что выполняется по крайней мере один из циклов выполнения, на которые планируется узел.Специальные замечания
Эта функция ориентирована на многопотоковое исполнение.
Оператор импорта
Objective C
@import CFNetwork;Swift
import CFNetworkДоступность
Доступный в iOS 2.0 и позже.
-
Не планирует CFHost от цикла выполнения.
Объявление
Swift
func CFHostUnscheduleFromRunLoop(_theService: CFHost!, _runLoop: CFRunLoop!, _runLoopMode: CFString!)Objective C
void CFHostUnscheduleFromRunLoop ( CFHostRef theHost, CFRunLoopRef runLoop, CFStringRef runLoopMode );Параметры
theServiceУзел нерасписания. Это значение не должно быть
NULL.runLoopЦикл выполнения. Это значение не должно быть
NULL.runLoopModeРежим, от которого служба должна быть не запланирована. Это значение не должно быть
NULL.Специальные замечания
Эта функция ориентирована на многопотоковое исполнение.
Оператор импорта
Objective C
@import CFNetwork;Swift
import CFNetworkДоступность
Доступный в iOS 2.0 и позже.
-
Получает Базовый идентификатор типа Основы для непрозрачного типа CFHost.
Возвращаемое значение
Базовый идентификатор типа Основы для непрозрачного типа CFHost.
Специальные замечания
Эта функция ориентирована на многопотоковое исполнение.
Оператор импорта
Objective C
@import CFNetwork;Swift
import CFNetworkДоступность
Доступный в iOS 2.0 и позже.
-
Определяет указатель на функцию обратного вызова, которую вызывают, когда асинхронное разрешение CFHost завершается, или ошибка происходит для асинхронного разрешения CFHost.
Объявление
Swift
typealias CFHostClientCallBack = CFunctionPointer<((CFHost!, CFHostInfoType, UnsafePointer<CFStreamError>, UnsafeMutablePointer<Void>) -> Void)>Objective C
typedef void (CFHostClientCallBack) ( CFHostRef theHost, CFHostInfoType typeInfo, const CFStreamError *error, void *info);Параметры
theHostУзел, для которого было завершено асинхронное разрешение.
typeInfoЗначение типа
CFHostInfoTypeпредставление типа информации (адреса, имена или информация о достижимости) полученный завершенным разрешением. Посмотрите Константы CFHostInfoType для возможных значений.errorЕсли отказавшее разрешение, содержит a
CFStreamErrorструктура, чейerrorполе содержит код ошибки.infoОпределяемая пользователем контекстная информация. Значение, которым указывают
infoсовпадает со значением, на которое указываютinfoполеCFHostClientContextструктура, которая была предоставлена, когда узел был связан с этой функцией обратного вызова.Обсуждение
Функцию обратного вызова для объекта CFHost вызывают один или несколько раз, когда асинхронное разрешение завершается для указанного узла, когда асинхронное разрешение отменяется, или когда ошибка происходит во время асинхронного разрешения.
Оператор импорта
Objective C
@import CFNetwork;Swift
import CFNetworkДоступность
Доступный в iOS 2.0 и позже.
-
Непрозрачная ссылка, представляющая объект CFHost.
Объявление
Swift
typealias CFHostRef = CFHostObjective C
typedef struct __CFHost* CFHostRef;Доступность
Доступный в iOS 2.0 и позже.
-
Структура, содержащая определяемые пользователем данные и обратные вызовы для объектов CFHost.
Объявление
Swift
struct CFHostClientContext { var version: CFIndex var info: UnsafeMutablePointer<Void> var retain: CFAllocatorRetainCallBack var release: CFAllocatorReleaseCallBack var copyDescription: CFAllocatorCopyDescriptionCallBack init() init(versionversion: CFIndex, infoinfo: UnsafeMutablePointer<Void>, retainretain: CFAllocatorRetainCallBack, releaserelease: CFAllocatorReleaseCallBack, copyDescriptioncopyDescription: CFAllocatorCopyDescriptionCallBack) }Objective C
struct CFHostClientContext { CFIndex version; void *info; CFAllocatorRetainCallBack retain; CFAllocatorReleaseCallBack release; CFAllocatorCopyDescriptionCallBack copyDescription; } CFHostClientContext; typedef struct CFHostClientContext CFHostClientContext;Поля
versionНомер версии типа структуры передал в качестве параметра клиентской функции узла. Единственное число действительной версии
0.infoПроизвольный указатель на выделенную память, содержащую определяемые пользователем данные, которые могут быть связаны с узлом и это передается обратным вызовам.
retainОбратный вызов раньше добавлял сохранение для узла на информационном указателе для жизни узла и может использоваться для временных ссылок, которые должен взять узел. Этот обратный вызов возвращает фактический информационный указатель для хранения в узле, почти всегда просто указатель передавал как параметр.
releaseОбратный вызов раньше удалял сохранение ранее добавленного для узла на информационном указателе.
copyDescriptionОбратный вызов раньше создавал представление описательной строки информационного указателя (или данные, на которые указывает информационный указатель) для отладки целей. Этот обратный вызов вызывают
CFCopyDescriptionфункция.Доступность
Доступный в iOS 2.0 и позже.
-
Значения, указывающие тип данных, которые должны быть разрешены или тип разрешенных данных.
Объявление
Swift
enum CFHostInfoType : Int32 { case Addresses case Names case Reachability }Objective C
enum CFHostInfoType { kCFHostAddresses = 0, kCFHostNames = 1, kCFHostReachability = 2 }; typedef enum CFHostInfoType CFHostInfoType;Константы
-
AddresseskCFHostAddressesУказывает, что адреса должны быть разрешены или что были разрешены адреса.
Доступный в iOS 2.0 и позже.
-
NameskCFHostNamesУказывает, что имена должны быть разрешены или что были разрешены имена.
Доступный в iOS 2.0 и позже.
-
ReachabilitykCFHostReachabilityУказывает, что информация о достижимости должна быть разрешена или что была разрешена информация о достижимости.
Доступный в iOS 2.0 и позже.
Оператор импорта
Objective C
@import CFNetwork;Swift
import CFNetworkДоступность
Доступный в iOS 2.0 и позже.
-
-
Ошибочные домены, определенные для
CFHostвызовы.Объявление
Swift
let kCFStreamErrorDomainNetDB: Int32 let kCFStreamErrorDomainSystemConfiguration: Int32Objective C
extern const SInt32 kCFStreamErrorDomainNetDB; extern const SInt32 kCFStreamErrorDomainSystemConfiguration;Константы
-
kCFStreamErrorDomainNetDBОшибочный домен, возвращающий ошибки из сетевой базы данных (преобразователь DNS) уровень (описанный в
/usr/include/netdb.h).Доступный в iOS 2.0 и позже.
-
kCFStreamErrorDomainSystemConfigurationОшибочный домен, возвращающий ошибки из уровня конфигурации системы (описанный в Ссылке Платформы Конфигурации системы).
Доступный в iOS 2.0 и позже.
Обсуждение
Для определения источника ошибки исследуйте
userInfoсловарь, включенный вCFErrorобъект, возвращенный вызовом функции или вызовомCFErrorGetDomainи передача вCFErrorвозразите и домен, значение которого Вы хотите считать. -
