C#¿¡¼ BeginReceive
¸Þ¼µå¸¦ »ç¿ëÇÏ¿© ºñµ¿ÀûÀ¸·Î µ¥ÀÌÅ͸¦ ¼ö½ÅÇÏ°í ÀÖÀ» ¶§, À̸¦ Ãë¼ÒÇÏ´Â ¹æ¹ýÀº ´ÙÀ½°ú °°½À´Ï´Ù. BeginReceive
ÀÚü¿¡ ´ëÇÑ Ãë¼Ò ¸Þ¼µå´Â ¾øÁö¸¸, ¼ö½Å ÀÛ¾÷À» Áß´ÜÇÏ·Á¸é ¼ÒÄÏÀ» ´Ý°Å³ª, Ç÷¡±× º¯¼ö¸¦ »ç¿ëÇÏ¿© ¼ö½Å ·çÇÁ¸¦ Á¦¾îÇÒ ¼ö ÀÖ½À´Ï´Ù.
¿¹Á¦ ÄÚµå
- ¼ÒÄÏ ´Ý±â: ¼ö½Å ÁßÀÎ ¼ÒÄÏÀ» ´ÝÀ¸¸é ÀÚµ¿À¸·Î ¼ö½ÅÀÌ Ãë¼ÒµË´Ï´Ù.
Socket socket;
bool receiving = true;
void StartReceiving()
{
byte[] buffer = new byte[1024];
socket.BeginReceive(buffer, , buffer.Length, SocketFlags.None, new AsyncCallback(ReceiveCallback), buffer);
}
void ReceiveCallback(IAsyncResult ar)
{
if (!receiving)
return;
int bytesRead = socket.EndReceive(ar);
StartReceiving();
}
void CancelReceiving()
{
receiving = false;
socket.Close();
}
- Ç÷¡±× º¯¼ö¸¦ »ç¿ëÇÑ Á¦¾î: À§ ÄÚµå¿Í °°ÀÌ Ç÷¡±× º¯¼ö¸¦ »ç¿ëÇÏ¿© ¼ö½Å ÀÛ¾÷ÀÇ È帧À» Á¦¾îÇÒ ¼ö ÀÖ½À´Ï´Ù.
°á·Ð
BeginReceive
¸Þ¼µå¸¦ Ãë¼ÒÇÏ´Â ¹æ¹ýÀº Á÷Á¢ Ãë¼ÒÇÏ´Â ¸Þ¼µå°¡ ¾øÀ¸¹Ç·Î, ¼ÒÄÏÀ» ´Ý°Å³ª Ç÷¡±× º¯¼ö¸¦ »ç¿ëÇÏ¿© ºñµ¿±â ¼ö½ÅÀ» ¼öµ¿À¸·Î Á¦¾îÇÏ´Â ¹æ¹ýÀÌ ÀÖ½À´Ï´Ù.