def write_multi_process(self, child_count):
log.info("Generating pages using %d child processes", child_count)
pages = list(self.site.pages.values())
# From http://code.activestate.com/recipes/576785-partition-an-iterable-into-n-lists/
chunks = [pages[i::child_count] for i in range(child_count)]
print(len(pages))
for c in chunks:
print(len(c))
import sys
pids = set()
for chunk in chunks:
pid = os.fork()
if pid == 0:
self.write_pages(chunk)
sys.exit(0)
else:
pids.add(pid)
while pids:
(pid, status) = os.wait()
pids.discard(pid)
评论列表
文章目录