xtn-tools-pro 1.0.0.4.4__py3-none-any.whl → 1.0.0.4.6__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -73,22 +73,40 @@ class GoFun:
73
73
  return
74
74
 
75
75
  # 共享任务队列
76
+ processes_list = []
76
77
  manager = multiprocessing.Manager()
77
78
  download_queue = multiprocessing.Queue()
78
79
  upload_queue = multiprocessing.Queue()
79
80
  proxies_dict = manager.dict()
80
81
  download_task_process = multiprocessing.Process(target=self._download_and_upload_task,
82
+ name="_download_and_upload_task",
81
83
  args=(download_queue, upload_queue, proxies_dict,
82
84
  self.__ini_info, logger))
85
+ processes_list.append(download_task_process)
83
86
  download_task_process.start()
84
87
 
85
88
  # 根据配置启动任务
86
89
  if go_task_function:
87
90
  go_task_fun_process = multiprocessing.Process(target=self._go_task_fun_task,
91
+ name="_go_task_fun_task",
88
92
  args=(download_queue, upload_queue, proxies_dict,
89
93
  self.__ini_info, go_task_function, logger))
94
+ processes_list.append(go_task_fun_process)
90
95
  go_task_fun_process.start()
91
- go_task_fun_process.join()
96
+
97
+ while True:
98
+ for p in processes_list:
99
+ # 检查子进程是否存活
100
+ logger.info(f"{p.is_alive()} {p.name} {p.pid} {p}")
101
+ if not p.is_alive():
102
+ print(f"Worker {p.name} is dead. Restarting...")
103
+ # 进程死掉,重新启动
104
+ # processes.remove(p)
105
+ # new_p = multiprocessing.Process(target=worker, args=(f"Worker-{len(processes) + 1}",))
106
+ # processes.append(new_p)
107
+ # new_p.start()
108
+
109
+ time.sleep(10)
92
110
 
93
111
  download_task_process.join()
94
112
 
@@ -105,7 +123,7 @@ class GoFun:
105
123
  logger.warning(f"当前网络ip --> {rp_json}")
106
124
  return rp_json['origin']
107
125
  except Exception as e:
108
- logger.critical(e)
126
+ logger.critical(f"获取当前网络ip{e}")
109
127
 
110
128
  def _download_and_upload_task(self, download_queue, upload_queue, proxies_dict, ini_info,logger):
111
129
  """
@@ -204,7 +222,7 @@ class GoFun:
204
222
  }
205
223
  result_list.append(task_item)
206
224
  except Exception as e:
207
- logger.critical(e)
225
+ logger.critical(f"循环全部获取队列的任务{e}")
208
226
 
209
227
  # 回写任务
210
228
  data = {"result": result_list, "remoteAddr": external_ip}
@@ -306,7 +324,7 @@ class GoFun:
306
324
  processes_start_list = []
307
325
 
308
326
  except Exception as e:
309
- logger.critical(e)
327
+ logger.critical(f"_go_task_fun_task-{e}")
310
328
 
311
329
  def _run_with_timeout(self, download_queue, upload_queue, proxies_dict, thread_num, logger, go_task_function):
312
330
  caller = inspect.stack()[1] # 获取调用者的调用栈信息
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: xtn-tools-pro
3
- Version: 1.0.0.4.4
3
+ Version: 1.0.0.4.6
4
4
  Summary: xtn 开发工具
5
5
  Author: xtn
6
6
  Author-email: czw011122@gmail.com
@@ -10,7 +10,7 @@ xtn_tools_pro/proxy/XiaoXiangProxy.py,sha256=45SsMZDc-3Ta4THX38vScjaeRBJSp420AJw
10
10
  xtn_tools_pro/proxy/__init__.py,sha256=WRwh6s2lruMu5buh0ejo9EK54kWT_VQhCsFGNFAmcyo,418
11
11
  xtn_tools_pro/proxy/proxy.py,sha256=No6E1pFY5yx2F4976pXPrLtq-QEVp79KupzcufjSN58,8703
12
12
  xtn_tools_pro/task_pro/__init__.py,sha256=nK3U47hWwE1H875ieEToH9r-jzXHS-PXk8cDstOvRE8,418
13
- xtn_tools_pro/task_pro/go_fun.py,sha256=oUhCTYSwbhHLMSm7u4NJAlX5CygeEnmri0NQgYXHNNM,14440
13
+ xtn_tools_pro/task_pro/go_fun.py,sha256=tGEq3-WFwu2efnc2SbSrMztEqIoAaJyO38WQAV5N-xo,15404
14
14
  xtn_tools_pro/utils/__init__.py,sha256=I1_n_NP23F2lBqlF4EOlnOdLYxM8M4pbn63UhJN1hRE,418
15
15
  xtn_tools_pro/utils/crypto.py,sha256=RZ5AET4udlraACWMeNF-17JiZ2R6Ahb47_j4tjkV7LE,3190
16
16
  xtn_tools_pro/utils/file_utils.py,sha256=VfdIxog4s1UW5NpKkCvQsUs9qHjLoNCnstZbnftkT4w,2046
@@ -19,8 +19,8 @@ xtn_tools_pro/utils/log.py,sha256=3zbKpWNEdU9bOzi7E-CUt4M0cTewCAfxjp8WjxCN9-M,10
19
19
  xtn_tools_pro/utils/retry.py,sha256=0wjHsR5DBBKpv4naMfxiky8kprrZes4WURIfFQ4H708,1657
20
20
  xtn_tools_pro/utils/sql.py,sha256=EAKzbkZP7Q09j15Gm6o0_uq0qgQmcCQT6EAawbpp4v0,6263
21
21
  xtn_tools_pro/utils/time_utils.py,sha256=TUtzG61PeVYXhaQd6pBrXAdlz7tBispNIRQRcGhE2No,4859
22
- xtn_tools_pro-1.0.0.4.4.dist-info/LICENSE,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
23
- xtn_tools_pro-1.0.0.4.4.dist-info/METADATA,sha256=DqaUxyIfwPXuyCCopcYCLDt5V8qRIVjK8WrFbx6l-IQ,455
24
- xtn_tools_pro-1.0.0.4.4.dist-info/WHEEL,sha256=oiQVh_5PnQM0E3gPdiz09WCNmwiHDMaGer_elqB3coM,92
25
- xtn_tools_pro-1.0.0.4.4.dist-info/top_level.txt,sha256=jyB3FLDEr8zE1U7wHczTgIbvUpALhR-ULF7RVEO7O2U,14
26
- xtn_tools_pro-1.0.0.4.4.dist-info/RECORD,,
22
+ xtn_tools_pro-1.0.0.4.6.dist-info/LICENSE,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
23
+ xtn_tools_pro-1.0.0.4.6.dist-info/METADATA,sha256=QJW3IFiyb7n_I2yCq1QDsidxubMRA2tgg34wU4UJnns,455
24
+ xtn_tools_pro-1.0.0.4.6.dist-info/WHEEL,sha256=oiQVh_5PnQM0E3gPdiz09WCNmwiHDMaGer_elqB3coM,92
25
+ xtn_tools_pro-1.0.0.4.6.dist-info/top_level.txt,sha256=jyB3FLDEr8zE1U7wHczTgIbvUpALhR-ULF7RVEO7O2U,14
26
+ xtn_tools_pro-1.0.0.4.6.dist-info/RECORD,,