Dữ liệu clipboard được lưu trữ ở đâu?


11

Có một tập tin thực tế nơi dữ liệu được lưu trữ trong khi tôi có một cái gì đó trong clipboard của tôi?

Câu trả lời:


14

Pasteboard được xử lý theo pbsquy trình trên OS X. Những thứ được sao chép được lưu trữ bên trong pbskhông gian địa chỉ. Thông tin thêm về điều đó là trên bài viết của Apple Pasteboard Server .

Cho dù dữ liệu được truyền giữa các đối tượng trong cùng một ứng dụng hoặc hai ứng dụng khác nhau, trong ứng dụng Cacao, giao diện vẫn giống nhau, một đối tượng NSPasteboard truy cập vào kho lưu trữ được chia sẻ nơi người viết và người đọc gặp nhau để trao đổi dữ liệu. Người viết, được gọi là chủ sở hữu bảng, gửi dữ liệu trên một ví dụ bảng và di chuyển trên. Người đọc sau đó truy cập bảng đồng bộ không đồng bộ, tại một số điểm không xác định trong tương lai. Đến lúc đó, đối tượng nhà văn thậm chí có thể không tồn tại nữa. Ví dụ: người dùng có thể đã đóng tài liệu nguồn hoặc thoát khỏi ứng dụng.

Do đó, khi di chuyển dữ liệu giữa hai ứng dụng khác nhau và do đó có hai không gian địa chỉ khác nhau, không gian bộ nhớ thứ ba sẽ liên quan để dữ liệu vẫn tồn tại ngay cả khi không có nguồn. NSPasteboard cung cấp quyền truy cập vào không gian địa chỉ thứ ba. Quá trình máy chủ pasteboard (pbs) luôn luôn chạy trong nền. Máy chủ pasteboard duy trì một số lượng tùy ý của các bảng past cá nhân để phân biệt giữa một số chuyển dữ liệu đồng thời.


5

Như Mateusz đã chỉ ra, không có tệp nào có thông tin này. Tuy nhiên, bạn có thể sử dụng pbcopypbpastethao tác với bảng.

Ví dụ: ls | pbcopysẽ sao chép đầu ra (thiết bị xuất chuẩn) của lsbảng.

Trang man cho pbcopy.


3

Quá trình máy chủ pasteboard là pboard không pbs , và bạn có thể xác minh điều đó bằng cách kiểm tra các trang man cho cả hai.

Bây giờ chúng tôi biết quy trình chính xác, chúng tôi có thể:

  1. tải lên màn hình hoạt động
  2. tìm kiếm pboardquá trình
  3. nhận thông tin bằng cmd+i
  4. xem Mở tệp và cổng

Chúng ta có thể thấy rằng các tệp duy nhất nó đã mở là chính nó, dyld và bộ đệm dyld.

nhập mô tả hình ảnh ở đây


Có vẻ như bạn đúng. Tôi đã mở Console.app và sau khi sao chép thứ gì đó tôi nhận được nhật ký từ pboardquy trình. Điều kỳ lạ là thông tin trên trang Appe là sai. +1
Mateusz Szlosek

1
@MateuszSzlosek vâng thật lạ. Tôi đã báo cáo nhưng nó không được thay đổi cho đến nay.
Matt Sephton
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.