2013-03-05 35 views
22

tôi sử dụng Debug.startMethodTracing cho các mục đích của tôi và trong các tập tin đầu ra tôi có thể nhìn thấy (tôi không sử dụng IPC):Android: Chủ đề liên kết là gì?

8 Binder Thread #2 
7 Binder Thread #1 

Đối với nó là gì?

Trả lời

41

Chuỗi kết nối đại diện cho một chuỗi dịch vụ riêng biệt của bạn. Binder là một cơ chế cung cấp Inter Communication Communication.

Hãy xem xét một ví dụ. Hãy tưởng tượng rằng bạn có dịch vụ Process B (xem hình). Và bạn có một số ứng dụng giao tiếp với dịch vụ này B (một trong những ứng dụng này là, ví dụ, Process A). Do đó, một dịch vụ B sẽ cung cấp các kết quả khác nhau đồng thời cho các ứng dụng khác nhau. Vì vậy, bạn cần chạy một số bản sao của Dịch vụ B cho các ứng dụng khác nhau. Android chạy các bản sao này trong các chủ đề khác nhau của Quy trình B và các chủ đề này được gọi là "Binder Thread #N".

Binder communication

tôi lấy hình ảnh here, nơi bạn có thể đọc những gì Binder là.

+0

Nhưng tôi không sử dụng IPC, tôi chỉ có một dịch vụ địa phương. Có vẻ như chúng là hệ thống. ĐƯỢC. Cảm ơn phản hồi của bạn. – pvllnspk

+0

Điều này có nghĩa là Dịch vụ bị ràng buộc không chạy trên luồng giao diện người dùng chính không? –

2

"Chất kết dính là cơ chế cung cấp liên lạc quy trình liên thông".

Chất kết dính không nhất thiết chỉ là cơ chế IPC.

Tất cả lưu lượng truy cập thành phần chéo được tóm tắt từ Binder, ví dụ như ý định địa phương là trừu tượng hóa chất kết dính.

Các vấn đề liên quan