Trong Activity Monitor trên OS X, có thể thêm các cột bổ sung vào chế độ xem danh sách quy trình. Hai cột có sẵn trong danh sách đó là "Tin nhắn đã gửi" và "Tin nhắn đã nhận", lần lượt hiển thị là "Đã gửi Msss" và "Rcvd Msss". Nhân chứng:
Activity Monitor đang đề cập đến loại "tin nhắn" nào?
Khi tôi nhìn thấy "tin nhắn", lúc đầu tôi đã nghĩ đến "tin nhắn" Objective-C được gửi đi cùng với objc_msgSend()
, nhưng tôi không thể thấy những thứ đó sẽ được hệ điều hành theo dõi như thế nào vì hầu hết các tin nhắn đó sẽ là nội bộ của chính quá trình. Trình gỡ lỗi có thể theo dõi các loại thông báo đó khi được đính kèm, nhưng tôi không thể thấy HĐH làm việc đó mọi lúc - chi phí rất cao.
Vì vậy, tôi đoán đó là những tin nhắn nặng hơn. Chúng có phải là một dạng RPC giữa các quy trình không? Hoặc, những tin nhắn đó gọi từ vùng đất người dùng vào kernel? Tìm kiếm tài liệu tham khảo dứt khoát. Cảm ơn bạn.
objc_msgSend()
cuộc gọi là theo dõi cho tất cả các quá trình, hoặc các thông điệp nặng hơn đoán?