tailieunhanh - Buit Windows By C.Net (Phần 5) part 10

Tham khảo tài liệu 'buit windows by (phần 5) part 10', công nghệ thông tin, kỹ thuật lập trình phục vụ nhu cầu học tập, nghiên cứu và làm việc hiệu quả | CHƯƠNG 5-3 Tương tác với thế giới COM 589 26 27 Sự kiện ràng buộc không có gì khác so với cập sự kiện bộ chuyển giao sự kiện của .NET Lớp CSimpleObject sẽ triệu gọi OnSomeEvent bết cứ khi nào phương thức của đối tượng bị triệu gọi. . Những vấn đề về tiểu trình Thread COM đưa ra quá thừa thãi của những kiểu tiểu trình threading . Các thành phần COM có thể là Apartment Both Free MTA Single hoặc STA - quá nhiều sự chọn lựa vì vặy cũng có thê có quá nhiều bất lợi. Nếu bạn không bao giờ đi sâu vào những kiểu threading của COM và không bao giờ hiểu những Apartment của COM thì coi như đó là may mắn của bạn. Tuy nhiên khi bạn cần làm việc với những dối tượng COM kinh điển đây lại là điều quan trọng để hiểu mõ i quan hệ mật thiết của những kiểu threading khác nhau. Các trình ứng dụng dược .NET quản lý Managed client tạo ra những thread bên trong STA. Khi sử dụng đối tượng COM cũng là STA không có sự bâ t lợi khi những phương thức đang triệu gọi trên những giao tiếp khác nhau. Tuy nhiên Nếu đốỉ tượng COM là MTA thì đó là lúc đối tượng COM đứng ra chịu mọi tổn phí. May mắn Managed client cõ thể thay đổi mô hình threading hiện hành tạo ra đốì tượng COM và tiết kiệm được một sô bước. Để thay đổi mô hình threading bạn truy xuâ t CurrentThread và đặt trạng thái cho Apartmentstate khi cần. Chú ý rằng Apartmentstate chỉ có thể đặt một lần. Ví dụ dưới đây sẽ thay đổi Apartmentstate của thread hiện hành bàng với MTA để tương ứng với MTAObject đang được truy xuâ t. Ịví dụ 5 3-10 ĩ Thay đổi Apartment của thread 1 2 If Create MTA Ob j ect MTAObject o new MTAObject 3 0. Foo Sử dụng mô hình thread mới thay đối tổng chi phí của các cuộc gọi COM liên tiếp thông qua những apartment khác nhau theo hướng giảm. Mâ chương trình bên phần Server rất cần tốc độ vì vậy việc để giành tểng chi phí là một việc hết sijc quan trọng và việc đôi tượng COM sử dụng mô hình thread cho phép tôi đa lời gọi đối tượng rất -hiệu quá. . So sánh kiểm .NET