我有以下脚本执行了3次,但我不知道为什么
#!C:/Python38-32/python.exe
#script.py
from py_get_data_from_game import main
from multiprocessing import Pool
import connect_to_db
import mysql.connector
from mysql.connector import Error
connection = connect_to_db.connect()
user_names = []
passwords = []
print('START')
try:
connection = connect_to_db.connect()
if connection.is_connected():
sql_select_Query = "select * from players"
cursor = connection.cursor(dictionary=True)
cursor.execute(sql_select_Query)
records = cursor.fetchall()
for row in records:
user_names.append(row['user_name'])
passwords.append(row['password'])
except Error as e:
print("Error while connecting to MySQL", e)
finally:
if (connection.is_connected()):
cursor.close()
connection.close()
print("MySQL connection is closed")
if __name__ == '__main__':
pool = Pool(2) # two parallel jobs
results = pool.map(main, zip(user_names, passwords))
输出:
C:\scripts>script.py
START
MySQL connection is closed
START
MySQL connection is closed
START
MySQL connection is closed
使用时multiprocessing
,python需要在相同的环境(我的意思是imports
)下创建与您的程序碰巧指定的一样多的进程。它通过再次运行脚本来完成此操作。
为了避免也出现乱码,您应该将其放在以下位置:
if __name__ == '__main__':
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句