//internal void _CollectData() //{ // byte[] @out = new byte[this._Client.Available]; // this._Client.Client.Receive(@out); // this._CollectedData.Add(@out); //} private void _SendLoop() { while (this.IsConnected) { //if (!this._WantingToSend) //{ // this._Sending = true; if (this._Messages.Count > 0) { MekaItem msg = this._Messages[0]; byte[] bs = msg.ToBytes(); DateTime start = DateTime.Now; this._Client.Client.Send(bs); TimeSpan dif = DateTime.Now - start; if (dif.TotalMilliseconds != 0) { this._Speed = bs.Length / 1000.0 / dif.TotalSeconds; } //this._Messages.RemoveAt(0); Interlocked.Exchange <Bunch <MekaItem> >(ref this._Messages, this._Messages.SubBunch(1)); } //this._Sending = false; //} } }