Hi,
As we known, Harmony used loop socket to implement j.n.c.Pipe. On some
platforms, data written from one socket side would not send to other side
immediately, that cause data delay in our Pipe.
It's a problem in o.a.h.nio.internal.SelectorImpl, which used Pipe to wake up
blocked select, so if the delay happened, select would not be interrupted, even
Selector.wakeup() has finished. So I propose that setting tcp_nodelay to true
for Pipe.SinkChannel to help this. I'm not sure whether this change may affect
Pipe performance because of not using socket buffer. What do you think?
--
Best Regards,
Regis.
- Should we set tcp_nodelay true for Pipe.SinkChannel Regis
-