카테고리 없음

[씨#] C # : ObservableCollection에서 이벤트를 제거 하시겠습니까?

필살기쓰세요 2020. 12. 29. 15:47

내가 올바르게 이해하면 개체 컬렉션이 있습니다. 각 개체에 대해 일부 멤버 이벤트를 구독했습니다. 이제 개체에 처리기 함수에 대한 참조가 있습니다.

컬렉션을 지울 때 다른 사람이 멤버 개체를 참조하지 않는 경우 명시 적으로 구독을 취소 할 필요가 없습니다. 개체는 가비지 수집됩니다.
이 문제는 게시자가 구독자보다 오래 지속될 때 발생하며,이 경우 이벤트 처리기 / 대리자 참조로 인해 구독자가 유지 됩니다. 예를 들어 게시자를 정적 필드에 저장하고 명시 적으로 구독을 취소하지 않으면 GC에서 구독자를 수집하지 않습니다.

참조 : 1198076 및 기타 관련 질문.

-------------------

나는 myCollection.Clear (); 또는 이전 컬렉션 위에 새 myCollection을 만들어도 이벤트 컬렉션의 개체를 연결 해제하지 않고 반복을 수행합니다.



출처
https://stackoverflow.com/questions/1900587