Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > comp.lang.python > #75863
| Newsgroups | comp.lang.python |
|---|---|
| Date | 2014-08-07 22:19 -0700 |
| References | <7bd83ac7-17e6-49c2-b5c7-3236c900d005@googlegroups.com> <mailman.12720.1407394838.18130.python-list@python.org> <roy-496ACC.07490507082014@news.panix.com> <53e3afd9$0$29970$c3e8da3$5496439d@news.astraweb.com> |
| Message-ID | <f865db66-8cb8-4796-a8f0-bedfb2ef5079@googlegroups.com> (permalink) |
| Subject | Re: AttributeError: 'module' object has no attribute 'fork' |
| From | Rustom Mody <rustompmody@gmail.com> |
On Thursday, August 7, 2014 10:26:56 PM UTC+5:30, Steven D'Aprano wrote:
> Roy Smith wrote:
> > Peter Otten wrote:
> >> os.fork()
> >> Fork a child process.
> >> ...
> >> Availability: Unix.
> >> """
> >> You are using the wrong operating system ;)
> > To be honest, this could be considered a buglet in the os module. It
> > really should raise:
> > NotImplementedError("fork() is only available on unix")
> > or perhaps even, as Peter suggests:
> > NotImplementedError("You are using the wrong operating system")
> > either of those would be better than AttributeError.
> I disagree. How would you tell if fork is implemented? With the current
> behaviour, telling whether fork is implemented or not is simple:
> is_implemented = hasattr(os, "fork")
> With your suggestion:
> try:
> pid = os.fork()
> except NotImplementedError:
> is_implemented = False
> else:
> if pid == 0:
> # In the child process.
> os._exit(0) # Unconditionally exit, right now, no excuses.
> is_implemented = True
> which is not obvious, simple or cheap.
Surely I am missing something but why not check os.fork before
checking os.fork() ?
Something along these lines
>>> try:
... os.fork
... except AttributeError:
... ii = False
... else:
... ii = True
Of course more appropriate would be something along the lines:
catch AttributeError and re-raise NotImplementedError
Back to comp.lang.python | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread
AttributeError: 'module' object has no attribute 'fork' Satish ML <satishmlwizpro@gmail.com> - 2014-08-06 23:44 -0700
Re: AttributeError: 'module' object has no attribute 'fork' Peter Otten <__peter__@web.de> - 2014-08-07 09:00 +0200
Re: AttributeError: 'module' object has no attribute 'fork' Roy Smith <roy@panix.com> - 2014-08-07 07:49 -0400
Re: AttributeError: 'module' object has no attribute 'fork' Steven D'Aprano <steve+comp.lang.python@pearwood.info> - 2014-08-08 02:56 +1000
Re: AttributeError: 'module' object has no attribute 'fork' Rustom Mody <rustompmody@gmail.com> - 2014-08-07 22:19 -0700
Re: AttributeError: 'module' object has no attribute 'fork' Rustom Mody <rustompmody@gmail.com> - 2014-08-07 22:35 -0700
Re: AttributeError: 'module' object has no attribute 'fork' Steven D'Aprano <steve+comp.lang.python@pearwood.info> - 2014-08-08 15:48 +1000
Re: AttributeError: 'module' object has no attribute 'fork' Rustom Mody <rustompmody@gmail.com> - 2014-08-08 00:17 -0700
Re: AttributeError: 'module' object has no attribute 'fork' Chris Angelico <rosuav@gmail.com> - 2014-08-08 17:32 +1000
csiph-web