-
카테고리
-
세부 분야
게임 프로그래밍
-
해결 여부
미해결
Action<Socket>에 대해 질문있습니다.
21.05.24 16:23 작성 조회수 263
1
Action<Socket>에 대해 나름대로 공부해봤는데 이해가 잘 안돼서 여쭤봅니다ㅠㅠ
1. "매개변수는 Socket 하나만 갖고 반환값은 없는 메서드를 참조하는 델리게이트" 라고 이해했는데 맞나요?
2._onAcceptHandler.Invoke(args.AcceptSocket);에서 Invoke는 뭘 해주는 함수인가요? 1번처럼 이해한게 맞다면 그냥 _onAcceptHandler(args.AcceptSocket);로 호출해도 될거같아서요.(실제로 이렇게 바꿔도 잘 동작하더라구요)
답변을 작성해보세요.
1
Rookiss
지식공유자2021.05.24
1. 맞습니다!
2. 똑같습니다.
_onAcceptHandler() 이렇게 해도 내부적으로 .Invoke()가 호출됩니다.
가독성 측면에서, 그리고 nullable 지원 ?.Invoke() 할 수 있다는 점에서
저는 후자를 더 선호하지만 둘다 똑같으니 어느쪽으로 해도 무방합니다.
0
0
박준영
질문자2021.06.02
아하 답변 감사드립니다!! 한 가지 좀 쉬운 질문일 수도 있는데 혹시 ServerCore에서 리스너를 Main함수 밖에서 스태틱으로 만들어주신 이유가 있을까요? Main 안에서 Listener listener = new Listener()로 만들어도 될것같아서요!
답변 3