python process._sbootstrap () / .start () - PullRequest
       5

python process._sbootstrap () / .start ()

0 голосов
/ 24 ноября 2010

Как работает многопроцессорная обработка python. Метод start () процесса работает.В частности, есть ли документация для Process._bootstrap () и если да, то где?

Ответы [ 2 ]

0 голосов
/ 24 ноября 2010

Вот код, прямо из моей установки Python 2.7:

def _bootstrap(self):
    from . import util
    global _current_process

    try:
        self._children = set()
        self._counter = itertools.count(1)
        try:
            sys.stdin.close()
            sys.stdin = open(os.devnull)
        except (OSError, ValueError):
            pass
        _current_process = self
        util._finalizer_registry.clear()
        util._run_after_forkers()
        util.info('child process calling self.run()')
        try:
            self.run()
            exitcode = 0
        finally:
            util._exit_function()
    except SystemExit, e:
        if not e.args:
            exitcode = 1
        elif type(e.args[0]) is int:
            exitcode = e.args[0]
        else:
            sys.stderr.write(e.args[0] + '\n')
            sys.stderr.flush()
            exitcode = 1
    except:
        exitcode = 1
        import traceback
        sys.stderr.write('Process %s:\n' % self.name)
        sys.stderr.flush()
        traceback.print_exc()

    util.info('process exiting with exitcode %d' % exitcode)
    return exitcode
0 голосов
/ 24 ноября 2010

Я не уверен, что вам нужно связываться с _bootstrap.Если вы ищете основную идею о том, как использовать класс Process, я хотел бы взглянуть на:

...