/// <summary> /// ファイルをメモリに読み込んで送信の準備をする。 /// </summary> /// <param name="xmitFragmentBytes">各スレッドの送出バイト数</param> /// <returns>送出するファイルのバイト数</returns> public long SetupXmitTasks(string path, int xmitFragmentBytes) { mXmitTaskList = new List<XmitTask>(); long pos = 0; using (var br = new BinaryReader(File.Open(path, FileMode.Open, FileAccess.Read))) { do { var buff = br.ReadBytes(xmitFragmentBytes); if (buff.Length == 0) { break; } var xt = new XmitTask(pos, buff.Length, buff); mXmitTaskList.Add(xt); pos += buff.Length; } while (true); } return pos; }
/// <summary> /// ファイルをメモリに読み込んで送信の準備をする。 /// </summary> /// <param name="xmitFragmentBytes">各スレッドの送出バイト数</param> /// <returns>送出するファイルのバイト数</returns> public long SetupXmitTasks(string path, int xmitFragmentBytes) { mXmitTaskList = new List <XmitTask>(); long pos = 0; using (var br = new BinaryReader(File.Open(path, FileMode.Open, FileAccess.Read))) { do { var buff = br.ReadBytes(xmitFragmentBytes); if (buff.Length == 0) { break; } var xt = new XmitTask(pos, buff.Length, buff); mXmitTaskList.Add(xt); pos += buff.Length; } while (true); } return(pos); }
public void AssignTask(XmitTask task) { this.task = task; taskAssigned.Set(); }