Microsoft MVP성태의 닷넷 이야기
Socket스레드와 UI thread [링크 복사], [링크+제목 복사],
조회: 11124
글쓴 사람
guest
홈페이지
첨부 파일
 

socket에서 실시간으로 데이터를 받는 와중에
thread.Sleep(3000)하면 어떤 일이 벌어지나요?




--------------- 샘플 =========================================================

// Receive the host home page content and loop until all the data is received.
Int32 bytes = s.Receive(RecvBytes, RecvBytes.Length, 0);
strRetPage = "Default HTML page on " + server + ":\r\n";
strRetPage = strRetPage + ASCII.GetString(RecvBytes, 0, bytes);

while (bytes > 0)
{
  bytes = s.Receive(RecvBytes, RecvBytes.Length, 0);


  Thread.Sleep(3000);


  strRetPage = strRetPage + ASCII.GetString(RecvBytes, 0, bytes);
}








[최초 등록일: ]
[최종 수정일: 4/17/2023]


비밀번호

댓글 작성자
 



2023-04-17 01시26분
당연히 3초 대기가 발생하지 않을까요? 무슨 의도로 질문하신 건가요?
정성태
2023-04-17 02시04분
[guest] 3초동안 소켓데이터들은 계속 쌓이는데 얘들이 순서가 보장되는지 궁금해서요
[guest]
2023-04-17 02시18분
당연히 보장됩니다. UDP도 전송 측에서 보낸 순서대로 수신 측에 도달할 것인지를 보장하지 못하는 것일 뿐, 일단 데이터가 들어왔으면 순서대로 처리하게 됩니다. (굳이 그걸 코드와 메모리를 사용해 섞을 필요가 없을 것입니다.)
정성태
2023-04-17 03시43분
[guest] 감솨 ^_
[guest]

NoWriterDateCnt.TitleFile(s)