Example #1
0
    private IEnumerator DoParse()
    {
        int   msgCount    = 0;
        int   msgCountAcc = 0;
        float timeAcc     = 0;

        while (true)
        {
            msgCount = ReceiveQueue.GetCount();
            if (msgCount > 0)
            {
                for (int loop = 0; loop < msgCount; loop++)
                {
                    msgHandler.HandleMsg(ReceiveQueue.SyncDequeMsg());
                }
            }

            timeAcc     += Time.deltaTime;
            msgCountAcc += msgCount;
            if (timeAcc > 1)
            {
                timeAcc     = 0;
                msgCountAcc = 0;
            }

            yield return(null);
        }
    }