According to the : MSDN socket polling method SelectRead returns true on 3 occasions but I'm only interested in just the one; when there's data available for reading. Is there a way to poll a socket in C# so that I read the buffer only when this condition is satisfied?
so far my method is:
Code:private void recvMessage(ref TextBox mDest) { try { int rcount; if (active_connection) { if (m_sock.Poll(-1, SelectMode.SelectRead)) rcount = m_sock.Receive(recvBuffer); mDest.Text += Encoding.ASCII.GetString(recvBuffer); Array.Clear(recvBuffer, 0, recvBuffer.Length); mDest.Text += "\r\n"; SendMessage(mDest.Handle, WM_VSCROLL, (IntPtr)SB_BOTTOM, IntPtr.Zero); } else mDest.Text = ""; } catch (SocketException se) { MessageBox.Show(se.Message); } }



LinkBack URL
About LinkBacks


