public void ReloadAll() { TableReadThreadWork readWork = CreateTableReadJobs(TableConfig.preLoadTableArray, TableConfig.delayLoadTableArray); readWork.Start(); // 阻塞Reload while (readWork.IsDone == false) { } }
public static void ReadSync(Hunter.DTableOnParse onParse, string fileName) { var readParam = CreateReadParams(onParse, fileName); byte[] fileData = FileMgr.S.ReadSync(readParam.filePath); readParam.fileData = fileData; TableReadThreadWork work = new TableReadThreadWork(); work.ParseTable(readParam); }
/// <summary> /// 预先读取Language Const表 /// </summary> /// <returns></returns> public IEnumerator PreReadAll(Action onLoadFinish) { TableReadThreadWork readWork = CreateTableReadJobs(TableConfig.preLoadTableArray); readWork.Start(); while (readWork.IsDone == false) { yield return(0); } if (onLoadFinish != null) { onLoadFinish(); } yield return(0); }
public IEnumerator ReadAll(TDTableMetaData[] dataArray, Action onLoadFinish) { m_IsLoading = true; TableReadThreadWork readWork = CreateTableReadJobs(dataArray); readWork.Start(); while (readWork.IsDone == false) { m_TableReadProgress = readWork.finishedCount * 1.0f / readWork.readMaxCount * 1.0f; yield return(0); } m_IsLoading = false; if (onLoadFinish != null) { onLoadFinish(); } yield return(0); }
private TableReadThreadWork CreateTableReadJobs(TDTableMetaData[] tableArrayA, TDTableMetaData[] tableArrayB = null) { TableReadThreadWork readWork = new TableReadThreadWork(); if (tableArrayA != null) { for (int i = 0; i < tableArrayA.Length; ++i) { readWork.AddJob(tableArrayA[i].tableName, tableArrayA[i].onParse); } } if (tableArrayB != null) { for (int i = 0; i < tableArrayB.Length; ++i) { readWork.AddJob(tableArrayB[i].tableName, tableArrayA[i].onParse); } } return(readWork); }