Есть ли настоящий файл, в котором хранятся данные, пока у меня что-то есть в буфере обмена?
Картон обрабатывается pbs
процессом в OS X. Вещи, которые копируются, хранятся в pbs
адресном пространстве. Подробнее об этом в статье Apple Pasteboard Server .
Независимо от того, передаются ли данные между объектами в одном и том же приложении или двух разных приложениях, в приложении Какао интерфейс одинаков - объект NSPasteboard обращается к общему хранилищу, где писатели и читатели встречаются для обмена данными. Автор, называемый владельцем монтажной панели, помещает данные в экземпляр монтажной панели и продолжает работу. Затем читатель обращается к монтажному щиту асинхронно, в какой-то неопределенной точке в будущем. К тому времени объект-писатель может даже больше не существовать. Например, пользователь может закрыть исходный документ или выйти из приложения.
Следовательно, при перемещении данных между двумя разными приложениями и, следовательно, двумя разными адресными пространствами, включается третье пространство памяти, поэтому данные сохраняются даже в отсутствие источника. NSPasteboard обеспечивает доступ к третьему адресному пространству - процессу сервера монтажа (pbs), которое всегда работает в фоновом режиме. Сервер монтажных плат поддерживает произвольное количество отдельных монтажных плат, чтобы различать несколько одновременных передач данных.
Как указал Матеуш, нет файла с этой информацией. Тем не менее, вы можете использовать pbcopy
и pbpaste
манипулировать картона.
Например, ls | pbcopy
скопирует вывод (stdout) ls
в монтажную панель.
Процесс сервера монтажа pboard
не выполняется pbs
, и вы можете убедиться в этом, проверив страницы man для обоих.
Теперь, когда мы знаем правильный процесс, мы можем:
pboard
процессаМы видим, что открытые файлы - это сам dyld и кеш dyld.
pboard
процесса. Странно, что информация на сайте Appe неверна. +1