MOD:线程池方式
Showing
1 changed file
with
17 additions
and
10 deletions
... | @@ -51,6 +51,7 @@ from common.tools.comparison import cp | ... | @@ -51,6 +51,7 @@ from common.tools.comparison import cp |
51 | from common.tools.des import decode_des | 51 | from common.tools.des import decode_des |
52 | 52 | ||
53 | import threading | 53 | import threading |
54 | import concurrent.futures | ||
54 | 55 | ||
55 | compare_log = logging.getLogger('compare') | 56 | compare_log = logging.getLogger('compare') |
56 | log_base = '[Compare]' | 57 | log_base = '[Compare]' |
... | @@ -3715,11 +3716,14 @@ def se_compare(application_id, application_entity, ocr_res_id, last_obj, ocr_res | ... | @@ -3715,11 +3716,14 @@ def se_compare(application_id, application_entity, ocr_res_id, last_obj, ocr_res |
3715 | 3716 | ||
3716 | @app.task | 3717 | @app.task |
3717 | def fsm_compare(application_id, application_entity, uniq_seq, ocr_res_id, is_ca=True, is_cms=False): | 3718 | def fsm_compare(application_id, application_entity, uniq_seq, ocr_res_id, is_ca=True, is_cms=False): |
3718 | try: | 3719 | # try: |
3719 | producer_thread_fsm = threading.Thread(target=fsm_compare_thread, args=(application_id, application_entity, uniq_seq, ocr_res_id, is_ca, is_cms)) | 3720 | # producer_thread_fsm = threading.Thread(target=fsm_compare_thread, args=(application_id, application_entity, uniq_seq, ocr_res_id, is_ca, is_cms)) |
3720 | producer_thread_fsm.start() | 3721 | # producer_thread_fsm.start() |
3721 | except Exception as e: | 3722 | # except Exception as e: |
3722 | compare_log.info('[fsm thread error] [error={0}]'.format(traceback.format_exc())) | 3723 | # compare_log.info('[fsm thread error] [error={0}]'.format(traceback.format_exc())) |
3724 | with concurrent.futures.ThreadPoolExecutor(max_workers=20) as executor: | ||
3725 | # 使用map函数提交多个任务 | ||
3726 | results = list(executor.map(fsm_compare_thread, application_id, application_entity, uniq_seq, ocr_res_id, is_ca, is_cms)) | ||
3723 | 3727 | ||
3724 | 3728 | ||
3725 | def fsm_compare_thread(application_id, application_entity, uniq_seq, ocr_res_id, is_ca=True, is_cms=False): | 3729 | def fsm_compare_thread(application_id, application_entity, uniq_seq, ocr_res_id, is_ca=True, is_cms=False): |
... | @@ -3784,11 +3788,14 @@ def fsm_compare_thread(application_id, application_entity, uniq_seq, ocr_res_id, | ... | @@ -3784,11 +3788,14 @@ def fsm_compare_thread(application_id, application_entity, uniq_seq, ocr_res_id, |
3784 | 3788 | ||
3785 | @app.task | 3789 | @app.task |
3786 | def compare(application_id, application_entity, uniq_seq, ocr_res_id, is_ca=True, is_cms=False): | 3790 | def compare(application_id, application_entity, uniq_seq, ocr_res_id, is_ca=True, is_cms=False): |
3787 | try: | 3791 | # try: |
3788 | producer_thread = threading.Thread(target=compare_thread, args=(application_id, application_entity, uniq_seq, ocr_res_id, is_ca, is_cms)) | 3792 | # producer_thread = threading.Thread(target=compare_thread, args=(application_id, application_entity, uniq_seq, ocr_res_id, is_ca, is_cms)) |
3789 | producer_thread.start() | 3793 | # producer_thread.start() |
3790 | except Exception as e: | 3794 | # except Exception as e: |
3791 | compare_log.info('[thread error] [error={0}]'.format(traceback.format_exc())) | 3795 | # compare_log.info('[thread error] [error={0}]'.format(traceback.format_exc())) |
3796 | with concurrent.futures.ThreadPoolExecutor(max_workers=20) as executor: | ||
3797 | # 使用map函数提交多个任务 | ||
3798 | results = list(executor.map(compare_thread, application_id, application_entity, uniq_seq, ocr_res_id, is_ca, is_cms)) | ||
3792 | 3799 | ||
3793 | def compare_thread(application_id, application_entity, uniq_seq, ocr_res_id, is_ca=True, is_cms=False): | 3800 | def compare_thread(application_id, application_entity, uniq_seq, ocr_res_id, is_ca=True, is_cms=False): |
3794 | # POS: application_id, application_entity, uniq_seq, None | 3801 | # POS: application_id, application_entity, uniq_seq, None | ... | ... |
-
Please register or sign in to post a comment