Geir Magnusson Jr. wrote:
Artem Aliev wrote:
The hyport and hy* are a porting layer that provides os independent
interface.
hysock_select() does not return EINTR on windows why it should do it
under linux?
either user presses Ctrl-c or ctrl-\ or VM uses other signals for its
owns needs.
I think you just gave me the answer.
The *caller* to hysock_select() needs to decide what to do on EINTR, not
hysock_select() itself.
+1 to this solution, let's first keep portlib as it is, IIRC, there's
many native methods refers it.
But I'm still worry about ignore the signal in select(or its callers). I
know few about the SIGUSR2, but I doubt if some user give a signal to
the thread, how can our select process tell if the signal comes from
user or form VM? Shall it continue anyway?
Mask the signal may be a better way, select only stop when a certain
signal comes with a certain mask. However it may still puzzle the native
code if user also use masks.
I was thinking the powerful SIGUSR2 may resolve some problem
straightforwardly(like wakeup, etc.), but now I see there are still many
problems.
I believe J9 was not using any lib like SIGUSR2, maybe they create and
handle threads themselves (RI may do like this as well).
I'll keep an eye on the discussion, there are may select-related native
codes to deal ...
I still don't think this is a perfect solution, but I think it's better :)
I still want to know about J9 though. Maybe I need to go work for IBM
again :)
geir
---------------------------------------------------------------------
Terms of use : http://incubator.apache.org/harmony/mailing.html
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
--
Best Regards!
Jimmy, Jing Lv
China Software Development Lab, IBM
---------------------------------------------------------------------
Terms of use : http://incubator.apache.org/harmony/mailing.html
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]