Документ взят из кэша поисковой машины. Адрес оригинального документа : http://kodomo.fbb.msu.ru/hg/allpy/file/e461a5529338/utils/pool
Дата изменения: Unknown
Дата индексирования: Sun Feb 3 17:33:50 2013
Кодировка:
allpy: e461a5529338 utils/pool

allpy

view utils/pool @ 968:e461a5529338

Backported fixes to Alignment.realign(), Markup.remove(), processors.Muscle(), *.Column.types from default branch (revs [853],[931],[932],[933],[934],[952],[954])
author Daniil Alexeyevsky <dendik@kodomo.fbb.msu.ru>
date Sat, 25 Feb 2012 18:50:58 +0400
parents
children
line source
1 #!/usr/bin/python
2 import subprocess
3 import os
4 import shlex
5 import optparse
7 p = optparse.OptionParser()
8 p.add_option('-n', '--size', type=int, help='Pool size')
9 p.add_option('-c', '--cmd',
10 help='Command template. Insert {} for argument.'
11 ' Put the argument in double quotes if it may contain spaces.')
12 options, args = p.parse_args()
14 spawned = 0
15 for arg in args:
16 if spawned > options.size:
17 os.wait()
18 spawned -= 1
19 cmd = shlex.split(options.cmd.replace('{}', arg))
20 subprocess.Popen(cmd)
21 spawned += 1
23 try:
24 while True:
25 os.wait()
26 except Exception:
27 pass
29 # vim: set ts=4 sts=4 et sw=4: