private async void SendBtn_Click(object sender, EventArgs e) { SendBtnActive(true); bool recvStat = _tapePunch.PuncherOn; SetRecv(false); await Task.Run(() => { byte[] buffer = _tapePunch.GetBufferFromCurrentPos(); for (int i = 0; i < buffer.Length; i++) { while (_itelex.GetSendBufferCount() > 2) { Task.Delay(100); } _itelex.SendBaudotCode(buffer[i]); _tapePunch.ScrollLeft(1); //PunchedTapePb.Refresh(); //UpdateScrollbar(); } }); SendBtnActive(false); SetRecv(recvStat); }
private async void SendBtn_Click(object sender, EventArgs e) { SendBtnActive(true); bool recvStat = _tapePunch.PuncherOn; SetRecv(false); _stopSend = false; _sendSpeed = 150; await Task.Run(() => { byte[] buffer = _tapePunch.GetBufferFromCurrentPos(); for (int i = 0; i < buffer.Length; i++) { if (_stopSend) { break; } if (_itelex.IsConnected) { while (_itelex.GetSendBufferCount() > 2) { Thread.Sleep(100); } } _itelex.SendBaudotCode(buffer[i]); _tapePunch.ScrollLeft(1); //PunchedTapePb.Refresh(); //UpdateScrollbar(); #if DEBUG //Thread.Sleep(_sendSpeed); #endif } }); SendBtnActive(false); SetRecv(recvStat); }