타이머 기능을 추가했습니다.

30 views
Skip to first unread message

Javawork

unread,
Jun 10, 2010, 10:00:51 AM6/10/10
to HalfNetwork
AddTimer 메소드를 사용하면 타이머 기능을 사용할 수 있습니다.

bool AddTimer(uint32 timerID, uint32 interval, uint32 start = 0);

interval은 타이머의 주기(ms), start는 최초에 몇 ms후에 불릴지를 결정하는 인자 입니다.

start는 스킵하면 interval과 같은 값으로 설정됩니다.

예를 들어 아래와 같이 설정하면
NetworkInstance->AddTimer(100, 2000);

eMH_Timer 값이 2초에 한번씩 Queue에 넣어집니다.

TimerID는 postee.stream_id값으로 식별이 가능합니다.

특정 QueueID로만 PopMessage(혹은 PopAllMessage)를 하고 있으면 타이머 이벤트를 받을수 없습니다.

* QueueID 인자 없는 PopMessage(혹은 PopAllMessage) 함수를 사용하거나
* TimerQueueID로 PopMessage(혹은 PopAllMessage) 를 해야

타이머 이벤트를 받을수 있습니다.

TestServer 예제를 참고하시면 사용예가 있습니다.

또 하나의 변경 사항은 예전에는 QueueID 인자 없는 PopAllMessage를 사용하면

Queue에서 가져올게 없어도 cpu 사용률이 증가하는 현상이 있었는데 이번에 수정되었습니다.

여러개의 Queue를 하나의 이벤트 객체를 통해 감시 할수 있는 코드를 추가했기 때문입니다.

타이머 기능 관련해서 질문이나 개선요청 사항 있으시면 이 스레드로 해주시기 바랍니다.

Reply all
Reply to author
Forward
0 new messages