Осуждения ядра углерода

Ядро углерода, подплатформа платформы защиты Core Services, содержит интерфейсы программирования многих устаревших менеджеров по Углероду, в дополнение к различным утилитам. В OS X v10.8, осуждается большинство этих интерфейсов.

Если Ваше приложение использует APIs в платформе Ядра Углерода, рекомендуется исследовать способы обновить код. Это списки документов заголовочные файлы Ядра Углерода, осуждающиеся в OS X v10.8 и суммирующие часть альтернативного APIs, который можно использовать.

Содержание:

AIFF

AIFF заголовочный файл определяет формат файла AIFF. Начало в OS X v10.8, AIFF.h больше не будет обновляться или сохраняться.

Псевдонимы

Aliases заголовочный файл определяет функции менеджера по Псевдониму, разработанного, чтобы помочь Вам создать и разрешить записи псевдонима (записи псевдонима являются структурами данных, описывающими объекты файловой системы, такие как файлы, каталоги и объемы). Для доступа к тому же типу информации в OS X v10.8 приложение необходимо использовать закладку APIs, предоставленный NSURL и CFURL классы вместо этого.

Закладка является непрозрачной структурой данных, описывающей расположение файла. Несмотря на то, что путь и ссылка на файл, URLs может быть хрупким между запусками Вашего приложения, закладка, могут обычно использоваться для воссоздавания URL к файлу, даже когда файл был перемещен или переименован. Если у Вас есть файл псевдонима, содержащий менеджера по Псевдониму информация, использовать bookmarkDataWithContentsOfURL:error: синтезировать данные закладки для файла. Для узнавания больше об использовании закладок см. Ссылку класса NSURL и Ссылку CFURL.

Наборы

Collections заголовочный файл определяет функции менеджера коллекции, осуждавшегося до OS X v10.8. Менеджер коллекции определил абстрактный тип данных, позволивший Вам хранить набор информации. Для управления наборами объектов в приложении используйте набор APIs в Основе или Базовой Основе (для получения дополнительной информации, посмотрите, что Наборы Программируют Темы и Наборы, Программируя Темы для Базовой Основы).

Компоненты

Components заголовочный файл определяет функции Менеджера компонентов, разработанного, чтобы помочь Вам найти и использовать компоненты в своем приложении или добавить пользовательские компоненты к предоставленным системой службам, таким как QuickTime и Core Audio. Менеджер компонентов осуждается в OS X v10.8, и нет никакой точной замены для него. При использовании QuickTime в приложении Вы, возможно, должны были бы продолжать использовать Менеджер компонентов, чтобы просмотреть встроенные компоненты QuickTime или добавить пользовательские компоненты.

Если Вы используете Менеджер компонентов для определения пользовательских компонентов, расширяющих приложение, считающих создание пользовательского сменной моделью для тиражирования функциональности, в которой Вы нуждаетесь (чтобы начать узнавать о плагинах, посмотрите, что Плагин Программирует Темы). Если необходимо найти и открыть аудиоустройства и аудиокодеки в приложении, используйте Audio Component Services вместо Менеджера компонентов (для получения дополнительной информации, посмотрите Ссылку Audio Component Services).

ConditionalMacros

В OS X v10.8, содержание ConditionalMacros заголовочный файл был перемещен в /usr/include/ConditionalMacros.h.

Отладка

Debugging заголовочный файл определяет макросы, которые обрабатывают утверждения и исключения. В OS X v10.8, они макросы доступны в /usr/include/AssertMacros.h.

DriverServices

DriverServices заголовочный файл определяет функции, помогающие Вам управлять основанными на времени данными. Для выполнения этих функций в OS X v10.8 приложение используйте CFAbsoluteTime или время Маха APIs вместо этого. Для сводки объектов таймера в Махе посмотрите Управление временем; узнать больше mach_absolute_time, посмотрите Маха Абсолютные Единицы измерения времени.

DriverSynchronization

DriverSynchronization заголовочный файл определяет функции, выполняющие операции — те, которые сравнивают и подкачивают — атомарным или синхронизируемым способом. Для получения этой функциональности в коде используйте Маха OSAtomic APIs вместо этого (для узнавания больше OSAtomic APIs, см. libkern Ссылку).

Порядок байтов

Endian заголовочный файл определяет Базовый Порядок байтов API, обеспечивающий функции, помогающие Вам преобразовать данные между форматами с прямым порядком байтов и с обратным порядком байтов. Для замены этой функциональности в коде используйте Базовые функции порядка байтов Основы (описанный в Ссылке Утилит Порядка байтов) вместо этого.

Файлы

Files заголовочный файл определяет Файловый менеджер API, осуждающийся в OS X v10.8. Файловый менеджер обеспечивает функции, воздействующие на файлы, папки и объемы, не представляя низкоуровневые подробные данные реализации, такие как форматы объема и файловая система.

Существуют многие Основа, Базовая Основа, Дисковый Арбитраж, и POSIX и BSD APIs, который можно использовать для замены функций Файлового менеджера в приложении. Например, если необходимо получить уведомления, когда папка изменяется, используйте События Файловой системы API (для узнавания больше об этом API, см. Руководство по программированию Событий Файловой системы). Или если необходимо смонтироваться, размонтироваться или извлечь локальный том, используйте Дисковый Арбитраж API (для узнавания больше о Дисковом Арбитраже API, см. Дисковое Арбитражное Руководство по программированию).

Для обнаружения, который APIs рекомендуют заменить определенные функции Файлового менеджера посмотрите Ссылку Файлового менеджера.

Средство поиска

Finder заголовочный файл определяет типы данных и константы, помогающие Вам использовать метаданные Средства поиска для доступа к элементам файловой системы. Несмотря на то, что Вы не должны непосредственно управлять информацией о Средстве поиска, можно получить доступ к информации при помощи свойств CFURL и NSURL объекты, такой как kCFURLIsAliasFileKey, kCFURLIsHiddenKey, и kCFURLHasHiddenExtensionKey. Кроме того, можно использовать Launch Services API для регистрации типов документов, что поддержки приложений (для приобретения знаний об использовании Launch Services в коде см. Руководство по программированию Launch Services).

FixMath

FixMath заголовочный файл определяет функции, преобразовывающие между числами, представленными в различных форматах (таких как десятичная точка фиксированной точки и плавающая точка) и функции, выполняющие вычисления. В OS X v10.8, осуждается использование фиксированных типов данных; используйте стандарт C типы с плавающей точкой вместо этого.

Папки

Folders заголовочный файл определяет функции менеджера по Папке, осуждавшегося до OS X v10.8. Менеджер по Папке определил функции, позволившие Вам находить и создавать папки и управлять, как файлы направляются между папками. В OS X v10.8 и позже, используйте NSPathUtilities API вместо этого (для получения дополнительной информации, см. Ссылку класса NSString, Ссылку класса NSArray и Ссылку Платформы Основы).

fp

fp заголовочный файл определяет тригонометрические, гиперболические, и другие функции, помогающие Вам выполнить числовые вычисления. Для выполнения этих вычислений в приложении, работающем в OS X v10.8 и позже, используйте API, определенный в /usr/include/math.h вместо этого.

Гештальт

Gestalt заголовочный файл определяет функции менеджера по Гештальту, позволяющего Вам исследовать операционную среду своего приложения. Если необходимо получить системную информацию в приложении, работающем в OS X v10.8 или позже, использовать sysctl вместо этого.

HFSVolumes

В OS X v10.8, HFSVolumes заголовочный файл содержит только определение HFSCatalogNodeID введите, который используется для идентификации файла или папки в HFS Плюс файловая система. OS X не предоставляет интерфейсы программирования, определяющие дисковые структуры данных это использование HFS.

LowMem

LowMem заголовочный файл определяет функции, разрешающие доступ к типам данных, хранившихся в переменных низкой памяти в версиях Mac OS до OS X. В более ранних версиях OS X эти функции поддерживались для упрощения портирования устаревших приложений. Никакое современное приложение OS X не должно использовать эти функции для получения информации о службе или системе. Если бы, например, необходимо получить позицию указателя мыши, Вы использовали бы высокоуровневый API, такой как Quartz Display Services (для приобретения знаний о Quartz Display Services, посмотрите, что Quartz Display Services Программирует Темы).

Макеррорс

MacErrors заголовочный файл определяет коды ошибки, использовавшиеся во многом устаревшем APIs. Как можно больше, переместите на APIs тот возврат NSError (или CFError) объекты вместо этого. Узнать больше об использовании NSError и CFError объекты, см. Ссылку класса NSError и Ссылку CFError.

MachineExceptions

MachineExceptions заголовочный файл определяет структуры данных, представляющие архитектуру различного CPUs и функций обработчика исключений. В целом используйте функции Маха для получения этой информации вместо этого.

Макмемори

MacMemory заголовочный файл определяет многие функции Диспетчера памяти, который доступен только для совместимости с устаревшими приложениями и API. Среди прочего Диспетчер памяти помог разработчикам установить раздел памяти приложения во время запуска и помог выполнить задачи управления памятью, ставшие ненужными в OS X. За исключением использований QuickTime, можно использовать другой API вместо Диспетчера памяти API. Например, если Вы используете NewHandle или NewPtr для простых выделений использовать malloc вместо этого. Если Вы используете дескрипторы, чтобы содержать или доступные для редактирования данные изменяемого размера, переключиться на CFMutableData API (для получения дополнительной информации, посмотрите Ссылку CFMutableData). Наконец, использовать memmove вместо BlockMove или BlockMoveData, и используйте bzero или memset вместо BlockZero.

Мактайпс

MacTypes заголовочный файл определяет типы исходных данных, такой как UInt64 и Boolean. Если необходимо включать этот заголовочный файл для совместимости с устаревшим кодом, использовать /usr/include/MacTypes.h вместо этого.

Math64

Math64 заголовочный файл определяет функции, выполняющие 64-разрядные целочисленные вычисления. Поскольку текущие компиляторы поддерживают 64-разрядную целочисленную математику по умолчанию, Вы больше не должны использовать функции в Math64.h.

MixedMode

MixedMode заголовочный файл определяет функции Смешанного менеджера по Режиму, который доступен только для совместимости с устаревшими приложениями. Смешанный менеджер по Режиму обеспечил API для обработки переключения между PowerPC и 68K архитектурой. В OS X v10.8, этот API является устаревшим.

Многопроцессорная обработка

Multiprocessing заголовочный файл является частью устаревшей Multiprocessing Services API, позволивший устаревшим приложениям поддерживать многозадачность. В приложениях OS X необходимо поддерживать многозадачность при помощи Центральной Отгрузки или потоков POSIX. Для приобретения знаний о многопроцессорной обработке на OS X см. Руководство по программированию Параллелизма; для приобретения знаний о подпрограммах потока POSIX посмотрите pthread(3) OS X Developer Tools Manual Page. Можно узнать об объектах таймера в Махе в Управлении временем; узнать больше mach_absolute_time, посмотрите Маха Абсолютные Единицы измерения времени.

MultiprocessingInfo

MultiprocessingInfo заголовочный файл является частью устаревшей Multiprocessing Services API. В приложениях OS X необходимо поддерживать многозадачность при помощи блоков или Центральной Отгрузки. Для приобретения знаний о многопроцессорной обработке на OS X см. Руководство по программированию Параллелизма.

OSUtils

OSUtils заголовочный файл определяет функции Утилит управления памятью API, который доступен только для совместимости с устаревшими приложениями. Утилиты управления памятью поддерживали функциональность, такую как управление очереди OS и получение имени пользователя или имени компьютера. Вот альтернативный APIs, который необходимо использовать вместо функций, осуждаемых в OS X v10.8:

Осуждаемая функция

Рекомендуемая альтернатива

Delay

sleep, usleep, или nanosleep

Enqueue и Dequeue

queue(3) (используйте взаимоисключающую блокировку),

CSCopyUserName

Используйте операции базы данных пароля, такой как getpwuid_r, или функции принадлежности, такой как mbr_uid_to_uuid

CSCopyMachineName

SCDynamicStoreCopyComputerName

PEFBinaryFormat

Собственный формат исполняемых файлов OS X является Мужественным, таким образом, предпочтительный формат исполняемых файлов, определенный в PEFBinaryFormat.h является устаревшим.

PLStringFuncs

PLStringFuncs заголовочный файл определяет подпрограммы обработки строк Паскаля. В OS X v10.8 и позже, используйте Базовые строковые функции Основы вместо этого (для получения дополнительной информации, см. Ссылку CFString).

Ресурсы

Resources заголовочный файл определяет многие функции Менеджера ресурсов, позволяющего устаревшему приложению создавать и управлять своими ресурсами. В OS X v10.8, осуждается Менеджер ресурсов. Для управления ресурсами приложения используйте пакеты вместо этого. Можно узнать больше о пакетах путем чтения Руководства по программированию Пакета.

Потоки

Threads заголовочный файл определяет функции менеджера по Потоку, осуждавшегося до OS X v10.8. Менеджер по Потоку поддерживал совместное планирование потоков в приложении. В OS X необходимо использовать Grand Central Dispatch (GCD) или потоки POSIX вместо этого. Для узнавания больше о GCD посмотрите Ссылку Grand Central Dispatch (GCD); чтобы изучить, как использовать в своих интересах поточную обработку в Вашем приложении, см. Руководство по программированию Поточной обработки.

Таймер

Timer заголовочный файл определяет функции Тайм менеджера, осуждавшегося до OS X v10.8. Тайм менеджер позволил приложениям планировать задачи выполниться в более позднее время. Для выполнения подобных задач планирования в приложении OS X можно использовать цикл выполнения, NSTimer объект или один из POSIX спит функции (т.е. sleep, usleep, или nanosleep). Для узнавания больше о Базовой Основе выполненные циклы посмотрите Ссылку CFRunLoop; узнать больше NSTimer возразите, см. Ссылку класса NSTimer. Кроме того, Центральная Отгрузка обеспечивает ряд источников отгрузки, позволяющих Вам контролировать действия низкоуровневых системных объектов (такие как порты Маха или дескрипторы Unix) и представлять обработчик событий очереди отгрузки, когда происходит определенное действие. Для узнавания больше об источниках отгрузки посмотрите Источники Отгрузки.

Если необходимо знать прошедшую продолжительность, так как система запустила (который является количеством, предоставленным осуждаемым Microseconds функция), использовать mach_absolute_time вместо этого.

ToolUtils

ToolUtils заголовочный файл определяет поразрядные функции, такой как BitXor и BitShift. При необходимости в этой функциональности в OS X v10.8 приложение используйте побитовые операторы C (такой как ^ и >>) вместо этого.