프로그래밍

c# 델리게이트 지역변수 사용할 경우

갑자기 궁금해졌는데 딱히 맘에 드는 답변이 없어서 질문을 올립니다.

 

지역변수를 델리게이트에서 사용했는데 callback해서 나중에 그 지역변수는 어떻게 살아있는 건가요?

예를 들면

 

delegate OnTempEvent();

 

string str = "temp String";

OnTempEvent callback = ()=> { Consol.WriteLine(str); };

 

이런식으로 쓰고 반환형이든 매개변수에서 어떤 클래스에 인자로 전달하는 방식을 사용했다고 가정한다면

 

나중에 가서 

callback() 호출하면 정상적으로 "temp String" 출력되는데 어떻게 저함수를 벋어나면 스택에서 빠질텐데

살아 있는거임?

6개의 댓글

2024.03.29

c# 람다 클로저 검색 ㄱㄱ

0
2024.03.30
@statover

아하 ㅈㄴ 시원하네요 이런 명사적인거 검색하는걸 잘 못해서

제가 원하는 검색 키워드이었음ㅋㅋㅋㅋ

0
2024.03.30

뭔가 잘못알고 게신거같은데 대리자는 함수를 대신호출해주는 역할임.

c++에서 함수포인터 비슷함.

 

본질적인걸 보면,

대리자에 호출예약을 걸고 코드 진행중 대리자를 호출하면, 예약된 매서드들이 호출되는거임.

이걸 비동기로 호출하면 별도의 스레드가 생성되고 거기에서 호출되는거고.

 

0
2024.03.30

이건그냥 람다클로저보다 로워링된 코드 보면 직빵인데

 

https://developstudy.tistory.com/107

1
2024.03.30
@a1s2d3f4g5

로워링은이런거고 씨샵용어가아니라 공통개념임

 

https://www.linkedin.com/pulse/lowering-c-sanjay-idpuganti

0
2024.03.30
@a1s2d3f4g5

요약하면 컴파일러가 해 주는거구나 ㅎㄷㄷ

0
무분별한 사용은 차단될 수 있습니다.
번호 제목 글쓴이 추천 수 날짜 조회 수
5701 [프로그래밍] 마리아DB mediumtext 그냥 쓰고 싶은데 17 잉텔 0 10 시간 전 120
5700 [프로그래밍] 안드로이드 씹뉴비 질문이요 1 집에가게해줘 0 12 시간 전 72
5699 [프로그래밍] c언어 7년했는데 이런게 되는거 처음알았음.. 4 케로로중사 0 1 일 전 639
5698 [프로그래밍] 파이썬 1도 모르는데 GPT로 프로그램 뚝딱 만듬 2 푸르딩딩 1 5 일 전 585
5697 [프로그래밍] 담주 면접잡혔는데 8 삐라루꾸 0 5 일 전 355
5696 [프로그래밍] 아두이노 부트로더를 구웠는데.. 4 렙이말한다ㅡ니가옳다 0 5 일 전 213
5695 [프로그래밍] IOS 개발자 있나여? 1 g4eng 0 8 일 전 236
5694 [프로그래밍] 시스템 디자인 인터뷰 준비 도움좀!!! 1 Nognhyup 0 8 일 전 186
5693 [프로그래밍] 최근에 vscode 쓴 사람 도움! 3 172102 0 9 일 전 435
5692 [프로그래밍] 책을 또 사버리고 말았다... 1 찰나생멸 2 10 일 전 424
5691 [프로그래밍] 윈도우 부팅화면 봐주실분 1 바나나맛두부 0 12 일 전 233
5690 [프로그래밍] 아 시발 퇴사마렵다 9 인간지표 0 13 일 전 588
5689 [프로그래밍] C#이 ㅈ사기 언어인 이유 19 ye 6 14 일 전 1167
5688 [프로그래밍] 요즘 모바일 개발은 어떤 걸 사용하나요? 14 커피좋아용 0 16 일 전 528
5687 [프로그래밍] 취준생 안드로이드 팀플 주제 머할까요... 8 조강현 0 16 일 전 285
5686 [프로그래밍] 공통코드테이블은 대체 왜 만드냐 9 잠적자 0 18 일 전 604
5685 [프로그래밍] 토이프로젝트 주제 선정 3 개드립눈팅1세대 0 18 일 전 280
5684 [프로그래밍] 엥 구글 플러터 유기각 재는거임?? 4 최수연 0 20 일 전 555
5683 [프로그래밍] 반도체 장비 업계인 있음? 9 캡틴띠모 0 21 일 전 430
5682 [프로그래밍] 안드로이드 책 추천좀 6 집에가게해줘 0 22 일 전 211