У меня есть программа, которая считывает некоторые данные, а затем выполняет анализ данных в пуле процессов. Я использую Manager.list () и блокировку, чтобы отслеживать, есть ли данные в списке, а если нет, поместить их в список и загрузить на сервер. Прямо сейчас у меня есть следующий код:
index_list = populate_index_list()
#index is the data I have coming in, and index_list is a Manager.List() object shared by the processes
if index not in index_list: #Check to see if it needs to be uploaded
with lock:
index_list = populate_index_list() #Get an updated list now that you have the lock incase another process just after the first if check put the same index in, then re check if I need to upload
if index not in index_list:
upload()
Не уверен, что есть лучший способ этого списка. Дайте мне знать, спасибо