xtn-tools-pro 1.0.0.5.5__py3-none-any.whl → 1.0.0.5.7__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.

Potentially problematic release.


This version of xtn-tools-pro might be problematic. Click here for more details.

@@ -73,6 +73,10 @@ class GoFun:
73
73
  if not go_task_function:
74
74
  return
75
75
 
76
+ self.__go_task_function = go_task_function
77
+ self.__create_process()
78
+
79
+ def __create_process(self):
76
80
  # 共享任务队列
77
81
  manager = multiprocessing.Manager()
78
82
  download_queue = multiprocessing.Queue()
@@ -83,33 +87,35 @@ class GoFun:
83
87
  self.upload_queue = upload_queue
84
88
  self.proxies_dict = proxies_dict
85
89
 
86
- processes_item_info = {
90
+ restart_time = int(self.__ini_info["restart_time"])
91
+ self.__processes_item_info = {
87
92
  "_download_and_upload_task": {
88
93
  "target": self._download_and_upload_task,
89
94
  "name": "_download_and_upload_task",
90
- "args": (download_queue, upload_queue, proxies_dict, self.__ini_info, logger),
95
+ "args": (download_queue, upload_queue, proxies_dict, self.__ini_info, self.logger),
91
96
  "start_time": 0,
92
- "restart_time": int(restart_time),
97
+ "restart_time": restart_time,
93
98
  },
94
99
  "_go_task_fun_task": {
95
100
  "target": self._go_task_fun_task,
96
101
  "name": "_go_task_fun_task",
97
- "args": (download_queue, upload_queue, proxies_dict, self.__ini_info, go_task_function, logger),
102
+ "args": (
103
+ download_queue, upload_queue, proxies_dict, self.__ini_info, self.__go_task_function, self.logger),
98
104
  "start_time": 0,
99
105
  "restart_time": int(restart_time),
100
106
  },
101
107
  }
102
108
 
103
- for p_item in processes_item_info.values():
109
+ for p_item in self.__processes_item_info.values():
104
110
  task_process = multiprocessing.Process(target=p_item["target"], name=p_item["name"], args=p_item["args"])
105
- processes_item_info[p_item["name"]]["task_process"] = task_process
106
- processes_item_info[p_item["name"]]["start_time"] = get_time_now_timestamp(is_time_10=True)
111
+ self.__processes_item_info[p_item["name"]]["task_process"] = task_process
112
+ self.__processes_item_info[p_item["name"]]["start_time"] = get_time_now_timestamp(is_time_10=True)
107
113
  task_process.start()
108
- logger.warning(f"进程已启动,{task_process.is_alive()},{task_process.name},{task_process.pid}")
114
+ self.logger.warning(f"进程已启动,{task_process.is_alive()},{task_process.name},{task_process.pid}")
109
115
 
110
116
  while True:
111
117
  time.sleep(10)
112
- for p_item_info in processes_item_info.values():
118
+ for p_item_info in self.__processes_item_info.values():
113
119
  task_process = p_item_info["task_process"]
114
120
  task_process_start_time = p_item_info["start_time"]
115
121
  task_process_restart_time = p_item_info.get("restart_time", 0)
@@ -118,31 +124,33 @@ class GoFun:
118
124
  task_process_name = task_process.name
119
125
  task_process_is_alive = task_process.is_alive()
120
126
  if not task_process_is_alive:
121
- logger.critical(f"进程不存在,{task_process_is_alive},{task_process_name},{task_process_pid}")
122
- p_item = processes_item_info[task_process_name]
127
+ self.logger.critical(f"进程不存在,{task_process_is_alive},{task_process_name},{task_process_pid}")
128
+ p_item = self.__processes_item_info[task_process_name]
123
129
  task_process = multiprocessing.Process(target=p_item["target"], name=p_item["name"],
124
130
  args=p_item["args"])
125
131
 
126
- processes_item_info[task_process_name]["task_process"] = task_process
127
- processes_item_info[task_process_name]["start_time"] = get_time_now_timestamp(is_time_10=True)
132
+ self.__processes_item_info[task_process_name]["task_process"] = task_process
133
+ self.__processes_item_info[task_process_name]["start_time"] = get_time_now_timestamp(
134
+ is_time_10=True)
128
135
  task_process.start()
129
- logger.warning(f"进程已重启,{task_process.is_alive()},{task_process.name},{task_process.pid}")
136
+ self.logger.warning(f"进程已重启,{task_process.is_alive()},{task_process.name},{task_process.pid}")
130
137
  else:
131
138
  if not task_process_restart_time:
132
139
  continue
133
140
  if task_process_start_time + task_process_restart_time <= get_time_now_timestamp(is_time_10=True):
134
- logger.critical(
141
+ self.logger.critical(
135
142
  f"进程已超过设置时间,正在强制关闭进程,{task_process_restart_time},{task_process_is_alive},{task_process_name},{task_process_pid}")
136
143
  task_process.terminate()
137
144
  task_process.join() # 等待进程确实结束
138
- p_item = processes_item_info[task_process_name]
145
+ p_item = self.__processes_item_info[task_process_name]
139
146
  task_process = multiprocessing.Process(target=p_item["target"], name=p_item["name"],
140
147
  args=p_item["args"])
141
148
 
142
- processes_item_info[task_process_name]["task_process"] = task_process
143
- processes_item_info[task_process_name]["start_time"] = get_time_now_timestamp(is_time_10=True)
149
+ self.__processes_item_info[task_process_name]["task_process"] = task_process
150
+ self.__processes_item_info[task_process_name]["start_time"] = get_time_now_timestamp(
151
+ is_time_10=True)
144
152
  task_process.start()
145
- logger.warning(f"进程已重启,{task_process.is_alive()},{task_process.name},{task_process.pid}")
153
+ self.logger.warning(f"进程已重启,{task_process.is_alive()},{task_process.name},{task_process.pid}")
146
154
 
147
155
  def __get_external_ip(self, logger):
148
156
  """
@@ -406,6 +414,7 @@ class GoFun:
406
414
  return task_item
407
415
  except Exception as e:
408
416
  self.logger.critical(f"get_download_task 获取下载任务 报错 {e}")
417
+ return False
409
418
 
410
419
  def update_upload_task(self, upload_queue, task_item):
411
420
  """
@@ -419,3 +428,7 @@ class GoFun:
419
428
  return task_item
420
429
  except Exception as e:
421
430
  self.logger.critical(f"update_upload_task 更新任务 报错 {e}")
431
+ return False
432
+
433
+ def reboot_process(self):
434
+ print(self.__processes_item_info)
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: xtn-tools-pro
3
- Version: 1.0.0.5.5
3
+ Version: 1.0.0.5.7
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=zqWJxl0ovW1jTEfZOIYJRB3I7HIu1DeDRL1BrBrKW_E,18653
13
+ xtn_tools_pro/task_pro/go_fun.py,sha256=RJJ80h2pHK4l_RqUrh653-rXu7RYqYBzM36Gdoh_txI,19154
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=m0WtTWkkwtrki1ftP8vCDR8bMfK2gcfUGx5J2x2IlLQ,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.5.5.dist-info/LICENSE,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
23
- xtn_tools_pro-1.0.0.5.5.dist-info/METADATA,sha256=AAHpgsjjtMBhk4lzHETVXMug5dvCU0MNDflSjvw2EJ0,455
24
- xtn_tools_pro-1.0.0.5.5.dist-info/WHEEL,sha256=oiQVh_5PnQM0E3gPdiz09WCNmwiHDMaGer_elqB3coM,92
25
- xtn_tools_pro-1.0.0.5.5.dist-info/top_level.txt,sha256=jyB3FLDEr8zE1U7wHczTgIbvUpALhR-ULF7RVEO7O2U,14
26
- xtn_tools_pro-1.0.0.5.5.dist-info/RECORD,,
22
+ xtn_tools_pro-1.0.0.5.7.dist-info/LICENSE,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
23
+ xtn_tools_pro-1.0.0.5.7.dist-info/METADATA,sha256=RWqsoDfeJhEPORf32bJ3w9qwXz5UWRrQrT6q-MfS3jQ,455
24
+ xtn_tools_pro-1.0.0.5.7.dist-info/WHEEL,sha256=oiQVh_5PnQM0E3gPdiz09WCNmwiHDMaGer_elqB3coM,92
25
+ xtn_tools_pro-1.0.0.5.7.dist-info/top_level.txt,sha256=jyB3FLDEr8zE1U7wHczTgIbvUpALhR-ULF7RVEO7O2U,14
26
+ xtn_tools_pro-1.0.0.5.7.dist-info/RECORD,,