コード例 #1
0
        public async Task SendAsync()
        {
            if (!IsOnline)
            {
                return;
            }
            StringBuilder sb = new StringBuilder();

            while (KeyDown.Count > 0)
            {
                var ob = KeyDown.Dequeue();
                sb.AppendFormat("{0} {1} ", ob.Item1, (int)ob.Item2);
            }
            sb.Remove(sb.Length - 1, 1);
            sb.Append('\n');
            byte[] data = Encoding.ASCII.GetBytes(sb.ToString());
            int    itt  = 0;
            int    left = data.Length;

            while (left > 0)
            {
                var sended = await TrySendAsync(data, itt, left, SocketFlags.None);

                itt  += sended;
                left -= sended;
            }
        }