Hello, Tim, I was able to do a partial research on unix/hysock.c 1. The patch [1] shows that when select() was used Artem Aliev had prepared a proper patch with while (result == -1 && errno == EINTR).
2. Currently the logic of select) call in unix/hysock.c is different, with no while loop. [1] https://issues.apache.org/jira/browse/HARMONY-1904 2009/4/1 Tim Ellison <[email protected]> > Alexei Fedotov wrote: > > As Mark said [1], the main difference in socket handling between jvms > > is system call interruption. DRLVM sends termination signals to system > > calls before stop the world garbage collection, hence they should be > > restarted (i.e. any system call should be put in a loop). > > Without getting into a debate about the virtues of interrupting an OS > call for GC purposes <g>, can you point me towards any examples of > native code that correctly handles these signals today? I'd like to > reuse a working example rather than hack something up. > > Regards, > Tim > > > Thanks! > > > > [1] http://markmail.org/thread/kbs7bfcnkcfggyc4 > > -- With best regards / с наилучшими пожеланиями, Alexei Fedotov / Алексей Федотов, http://www.telecom-express.ru/ http://people.apache.org/~aaf/
