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.

Reply via email to