/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~异步加载~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
    /// <summary>
    /// 添加异步资源加载
    /// </summary>
    /// <param name="path">资源路径</param>
    /// <param name="type">资源类型</param>
    /// <param name="callback">资源成功或失败回调函数</param>
    /// 例:ResourceManager.Instance.AddAsync("Prefab/Scene/Map_1003", eResType.PREFAB, delegate(sResLoadResult info){});
    /// <returns></returns>
    public ulong AddAsync(string path, eResType type, System.Action <sResLoadResult> callback)
    {
        if (m_BackLoadThread == null || string.IsNullOrEmpty(path))
        {
            return(0);
        }

        //判断是否已经加载过
        Object res = ResourceLoaderManager.Instance.GetResource(path);

        if (res != null)
        {
            if (callback != null)
            {
                callback(new sResLoadResult(true, path));
            }
            return(0);
        }

        ulong         id   = ShareGUID();
        sResLoadChunk info = new sResLoadChunk(path, type, callback);

        info.ID = id;
        m_BackLoadThread.Add(info);
        return(id);
    }
    /*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~同步加载~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
    /// <summary>
    /// 增加同步资源加载
    /// </summary>
    /// <param name="path">资源路径</param>
    /// <param name="type">资源类型</param>
    /// <returns></returns>
    public ulong AddSync(string path, eResType type)
    {
        if (m_FrontLoadThread == null || string.IsNullOrEmpty(path))
        {
            return(0);
        }

        ulong         id   = ShareGUID();
        sResLoadChunk info = new sResLoadChunk(path, type, null);

        info.ID = id;
        m_FrontLoadThread.Add(info);
        return(id);
    }