2010-10-07 27 views
6

Tôi hiện đang làm việc trên một gói SSIS và sau lần thứ 80 sử dụng FireInformation bên trong một Tác vụ Script, tôi phải tự hỏi: tại sao phương pháp này yêu cầu bạn chuyển vào boolean ref làm tham số cuối cùng? Tài liệu không nêu rõ bất cứ điều gì về cách bạn nên trả lời giá trị khi phương thức trả về. Am i thiếu cái gì ở đây?SSIS: Tò mò: tại sao tham số cuối cùng trong phương thức FireInformation là một bool ref?

Trả lời

3

Động cơ chạy theo thời gian có khả năng thay đổi “fireAgain” tham số và ngăn chặn sự bắn thêm các sự kiện. Để thực hiện điều này, thời gian chạy phải có quyền truy cập để sửa đổi biến. Nó chỉ có thể làm điều này nếu tham số được truyền bởi ref.

+0

Bạn vừa mới hồi sinh một câu hỏi từ 4 năm trước: P – enriquein

1

Đây là tham số vô tuyến.

Vì việc kích hoạt sự kiện có thể tốn kém, động cơ chạy thời gian cung cấp cơ chế để ngăn chặn các sự kiện mà bạn không quan tâm. Mỗi phương thức kích hoạt sự kiện đều có tham số FireAgain. Nếu giá trị của biến này là false, sau khi phương thức trả về, người gọi sẽ không kích hoạt lại sự kiện này trong suốt thời gian thực hiện hiện tại. Source

+4

Điều đó vẫn không giải thích tại sao lựa chọn thiết kế để biến nó trở thành tham số ref. Đặc biệt xem xét rằng vì người gọi là người đã gọi phương thức, thì người gọi đã biết giá trị của tham số boolean. Nó làm cho không có ý nghĩa với tôi. – enriquein

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