세션에서 특정 시간 이후에, 혹은 특정 시간 간격으로 실행될 동작을 등록할 수 있습니다.
세션이 파괴되면 등록한 동작은 더이상 실행되지 않습니다.
TCP 소켓은 EngineAPI.Networking.SessionTimer, 웹소켓은 EngineAPI.HttpServer.SessionTimer 를 사용하시면 됩니다.
자세한 사용 방법은 엔진 소스코드의 주석을 참고하세요.
-
세션 타이머에 등록한 동작은 세션 파이버에서 실행됩니다. 즉,
- 타이머 동작이 너무 오랫동안 실행되면, 메시지 처리 등 해당 세션에서 해야 할 다른 작업이 늦게 실행됩니다.
- 세션 파이버가 다른 작업을 하고 있으면 타이머에 등록한 동작의 실행이 기존 실행중이던 작업이 끝난 이후로 밀립니다.
-
등록한 동작이 정확히 지정된 시간만큼 지나서 실행된다는 보장은 없습니다. 약간 늦게 실행될 수 있습니다.
-
반복하는 타이머는 각 동작의 실행이 끝나는 시점에서부터 지정한 간격 이후의 시점에 다음 동작이 실행되도록 예약합니다. 따라서 10초에 한 번 실행하도록 예약하더라도 1분에 정확히 6번 실행된다는 보장은 없습니다.