The use of the platform-dependent flag syscall.MSG_WAITFORONE prevents building the router on platforms other than Linux. This change isolates this dependency. Behavior on non-Linux platforms will be less efficient but still semantically correct because ReadBatch will only read a single message on those platforms anyway.
Together with the previous PR #4499 and the dispatcher removal PR #4344 this set of changes will, e.g., enable running local development topologies on platforms other than Linux.
The use of the platform-dependent flag syscall.MSG_WAITFORONE prevents building the router on platforms other than Linux. This change isolates this dependency. Behavior on non-Linux platforms will be less efficient but still semantically correct because ReadBatch will only read a single message on those platforms anyway.
Together with the previous PR #4499 and the dispatcher removal PR #4344 this set of changes will, e.g., enable running local development topologies on platforms other than Linux.
Fixes #4046.