윈도우/소켓/send/FD_WRITE/요청한 양이 잘려서 보내질 때, EWOULDBLOCK이 발생하는가요?

pmingkr의 이미지

질문:
send 함수에서 -1이 아닌 길이가 반환될 때, 요청한 양과 다르다면,
EWOULDBLOCK 오류와 FD_WRITE 이벤트가 발생하나요?

.

.

FD_WRITE 이벤트는 쓰기가 가능해지면 발생하는 이벤트이니,
저의 생각으로는 send 함수가 요청한 양을 전부 보내지 못했을 때도 발생하지 않을까 생각했습니다.

하지만, EWOULDBLOCK 오류가 발생하면 FD_WRITE 이벤트가 발생한다는 글을 보고, 잘못 알고 있었던 것 같아, 테스트를 직접 해보았지만,

Windows 7, VS 2015, x86 빌드, 1000000000 바이트를 전송하였으나, 잘리지 않고, 한번에 전송하였습니다.
Windows 7, VS 2015, x64 빌드, 0x7fffffff 바이트를 전송하였으나, 잘리지 않고, 한번에 전송하였습니다.

그래서 질문을 올려봅니다.

댓글 달기

Filtered HTML

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
댓글 첨부 파일
이 댓글에 이미지나 파일을 업로드 합니다.
파일 크기는 8 MB보다 작아야 합니다.
허용할 파일 형식: txt pdf doc xls gif jpg jpeg mp3 png rar zip.
CAPTCHA
이것은 자동으로 스팸을 올리는 것을 막기 위해서 제공됩니다.