public boolean addTimingTask(int _round, _IALSynTask _task)
    {
        _lock();
        
        try
        {
            if(null == _task)
                return false;
            
            //当本回合的时候，直接进行添加
            if(_round == _m_iCurRound)
            {
                _m_lCurRoundTimingTaskList.add(_task);
                return true;
            }
            else if(_round == _m_iNextRound)
            {
                _m_lNextRoundTimingTaskList.add(_task);
                return true;
            }
            else if(_round > _m_iNextRound)
            {
                //长时间延迟的任务，按照回合顺序放入对应队列
                ListIterator<ALSynTimingTaskNodeFarDelayTaskInfo> iterator = _m_lFarDelayTaskList.listIterator();
                while(iterator.hasNext())
                {
                    ALSynTimingTaskNodeFarDelayTaskInfo taskInfo = iterator.next();
                    if(taskInfo.getRound() == _round)
                    {
                        //匹配回合则加入本节点
                        taskInfo.addSynTask(_task);
                        break;
                    }
                    else if(taskInfo.getRound() < _round)
                    {
                        //当插入的回合比对应回合早，则需要在对应回合之前插入数据
                        //这里采用的做法是将本节点数据重复插入到下一个节点，之后将本节点设置为新数据
                        iterator.add(taskInfo);

                        //创建新节点
                        ALSynTimingTaskNodeFarDelayTaskInfo newInfo = new ALSynTimingTaskNodeFarDelayTaskInfo(_round);
                        iterator.set(newInfo);
                        //插入任务
                        newInfo.addSynTask(_task);
                        break;
                    }
                }
                
                //判断是否已经到了最后节点
                if(!iterator.hasNext())
                {
                    //在最后节点则往最后追加数据
                    //创建新节点
                    ALSynTimingTaskNodeFarDelayTaskInfo newInfo = new ALSynTimingTaskNodeFarDelayTaskInfo(_round);
                    iterator.add(newInfo);
                    //插入任务
                    newInfo.addSynTask(_task);
                }
                
                return true;
            }
            else
            {
                //当回合小于当前回合则表示失败，外部需要直接处理
                return false;
            }
        }
        finally
        {
            _unlock();
        }
    }