A RetroSearch Logo

Home - News ( United States | United Kingdom | Italy | Germany ) - Football scores

Search Query:

Showing content from https://mail.python.org/pipermail/python-dev/2002-September/028628.html below:

Two random and nearly unrelated ideas)

[Python-Dev] Re: Signal-resistant code (was: Two random and nearly unrelated ideas) [Python-Dev] Re: Signal-resistant code (was: Two random and nearly unrelated ideas)Guido van Rossum guido@python.org
Thu, 05 Sep 2002 14:19:02 -0400
> >  - Macro: AC_SYS_RESTARTABLE_SYSCALLS
> >      If the system automatically restarts a system call that is
> >      interrupted by a signal, define `HAVE_RESTARTABLE_SYSCALLS'.
> 
> The name of this macro is misleading. It doesn't check whether system calls
> are restartABLE but whether they are restartED automatically by libc. It 
> forks a subprocess that sends a signal to the parent. The parent waits for
> the child and checks if the wait() was interrupted.
> 
> If this macro is defined you will never get EINTR so there's no need to
> worry about this. If it isn't defined you need to restart system calls 
> yourself.

This was a feature introduced by BSD Unix in a distant past, as a
change from v7 Unix (which had only the EINTR behavior).  For b/w
compatibility, BSD had a system call to disable the restart feature.
I'm guessing that over the years the feature has been found less than
helpful, so POSIX defaults to off.  POSIX sigaction() has a flag
SA_RESTART to enable restarting.

--Guido van Rossum (home page: http://www.python.org/~guido/)



RetroSearch is an open source project built by @garambo | Open a GitHub Issue

Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo

HTML: 3.2 | Encoding: UTF-8 | Version: 0.7.4