/// <summary> /// 文件读取器 /// </summary> /// <param name="physical">内存数据库物理层</param> public fileReader(physical physical) { this.physical = physical; fileStream = new FileStream(physical.path + physical.fileName, FileMode.Open, FileAccess.Read, FileShare.ReadWrite, fastCSharp.config.appSetting.StreamBufferSize, FileOptions.SequentialScan); size = fileStream.Length; waitHandle = new autoWaitHandle(false); clientHandle = new autoWaitHandle(false); if ((size & 3) == 0 && size >= sizeof(int) * 3) { threadPool.TinyPool.FastStart(this, thread.callType.MemoryDatabasePhysicalFileReader); } else { Dispose(); physical.dataError(); } }
/// <summary> /// 同步等待调用 /// </summary> private waitCall() { waitHandle = new autoWaitHandle(false); }