diff options
author | Kovarththanan Rajaratnam <kovarththanan.rajaratnam@gmail.com> | 2009-09-25 19:41:54 +0000 |
---|---|---|
committer | Kovarththanan Rajaratnam <kovarththanan.rajaratnam@gmail.com> | 2009-09-25 19:41:54 +0000 |
commit | eea92c8b2c0d518c48b719a702f1b32d0c3ba6ca (patch) | |
tree | a2d021c448b84b5d315acd965aea52aeb78ee49b /tools/indexcap.py | |
parent | 7658f9a43a28c75b10018d53337a7cbe78afed38 (diff) |
Use timeout to keep the file progress printing smooth
svn path=/trunk/; revision=30153
Diffstat (limited to 'tools/indexcap.py')
-rw-r--r-- | tools/indexcap.py | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/tools/indexcap.py b/tools/indexcap.py index f9ff217c7a..4fa615e184 100644 --- a/tools/indexcap.py +++ b/tools/indexcap.py @@ -26,7 +26,7 @@ # from optparse import OptionParser -from multiprocessing import Process, Pool +import multiprocessing import sys import os import subprocess @@ -125,16 +125,22 @@ def main(): cap_files = find_capture_files(paths, cap_hash) cap_files.sort() print len(cap_files), "total files,", + options.max_files = min(options.max_files, len(cap_files)) cap_files = cap_files[:options.max_files] print len(cap_files), "indexable files" print "\n" - pool = Pool(options.num_procs) + pool = multiprocessing.Pool(options.num_procs) results = [pool.apply_async(process_capture_file, [tshark, file]) for file in cap_files] cur_item_num = 0 for result in results: cur_item_num += 1 - file_result = result.get() + try: + file_result = result.get(1) + except multiprocessing.TimeoutError: + cur_item_num -= 1 + continue + if file_result is None: continue |