Skip to content

EAGAIN should also be thrown #84

Open
@rafaelroquetto

Description

@rafaelroquetto

Hello,

perhaps I am missing the rationale behind the decision to return 0 (or false) inside recv and send when an EAGAIN is spotted, instead of throwing - and I apologize in advance if this is the case.

The problem I encountered with this approach is that, when returning 0 only (instead of explicitly throwing EAGAIN like the other errors), I cannot tell, specially in the context of recv, whether I am reading a valid message with an empty frame (with size 0), or if this is an actual case of EAGAIN.

Is there a way to tell apart a genuine EAGAIN error versus reading an empty frame of a multipart message? Or should EAGAIN really be thrown?

Thanks,
Rafael

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions