Я пытаюсь использовать multiprocessing.Pool
для создания нескольких процессов, которые могут отправлять байты из списка счетчиков байтов в функцию шифрования из объекта шифрования.
with Pool(processes=4) as pool:
btList = pool.map(cipher.encrypt, ctrList)
Объект шифрования генерируетсяследующий код:
key = bytes.fromhex(args.k.read())
cipher = AES.new(key, AES.MODE_ECB)
ctrList представляет собой список типов Python bytes
, таких как:
ctrList = b'\x00\x00\x00', b'\x00\x00\x00', b'\x00\x00\x00', b'\x00\x00\x00'
Моя проблема заключается в том, что я получаю сообщение об ошибке ValueError: ctypes objects containing pointers cannot be pickled
Я даже пытался создать функцию, которая имеет аргументы (счетчик, шифр), и я все еще получаю те же ошибки.
Что означает эта ошибка?Мои переменные потеряны в новых процессах?