возвращаемые сисколами ошибки в стиле thread-safe

Тема в разделе "WASM.UNIX", создана пользователем milo, 7 сен 2010.

  1. milo

    milo New Member

    Публикаций:
    0
    Регистрация:
    22 мар 2009
    Сообщения:
    43
    Здравствуйте, случилось мне использовать неблокируемые сокеты в linux (epoll, recv, send). В документации к epoll говориться, что при использовании edge-triggered событий (а я использую именно их) читать/писать необходимо до тех пор, пока не получишь ошибку EAGAIN. На сколько я знаю, этот механизм в никсах не thread-safe, а программа многопоточная. Как быть?
     
  2. r90

    r90 New Member

    Публикаций:
    0
    Регистрация:
    26 ноя 2005
    Сообщения:
    898
    почитай man errno. Там всё написано. В частности это: errno is thread-local; setting it in one thread does not affect its value in any other thread.
     
  3. milo

    milo New Member

    Публикаций:
    0
    Регистрация:
    22 мар 2009
    Сообщения:
    43
    о, спасибо... почему-то думал иначе...