-
카테고리
-
세부 분야
게임 프로그래밍
-
해결 여부
해결됨
Broadcast() 함수는 Push()로 캡슐화하지 않는 이유가 궁금합니다
23.07.25 03:54 작성 조회수 331
0
public Player FindPlayer()는 리턴값 Player가 당장 필요해서 호출하는 함수니까 Push()를 안 하는 건 이해했습니다.
근데 public void Broadcast()도 FindPlayer()와 같은 케이스라고 하셨습니다. 이게 무슨 뜻인지 이해가 안 갑니다.
리턴값이 있는 것도 아니고 그냥 room.Push(room.Broadcast, packet) 처럼 Push로 고쳐도 상관없을 것 같은데 아닌가요?
혹시 Broadcast()는 엄청 많이 호출되는 특수한 함수니까 성능상 이유 때문에 Push()를 생략하고 호출한다거나 그런 건가요?
왜 FindPlayer()와 Broadcast()가 같은 케이스인지 궁금합니다.
답변을 작성해보세요.
0
Rookiss
지식공유자2023.07.25
물론 그렇게 해도 되긴 하지만,
함수들 중에서는 Job으로 예약하지 않고 즉발성으로 바로 실행하길 원하는 경우도 있는데,
Broadcast는 패킷 처리하는 것에 불과하니
굳이 새로운 Job으로 예약하기 보다는 바로 실행하고 싶다는 의미였습니다.
답변 1