這個問題搞了很久,除了網上大神們說的引數後面必須加逗號之外還有佇列,原來redis物件也不能寫在init初始化方法裡面,不知道什麼原因,寫在外面,程序池ok,任務開始執行。還望解惑,謝謝
redis_conn_1 = redisutil(db=1) # redis物件放在init方法裡面,程序池不執行,不知道原因,所以寫在了這裡class startdisguise(object):
def __init__(self):
self.cc = chaoscombination()
def wait_disguise(self):
pool = pool(max_process_num)
while true:
time.sleep(random.randint(1, 3))
print('有任務嗎,來看看')
task_disguise_info = redis_conn_1.get_connection().brpop('disguise_content_queue', timeout=3)
print('從redis裡面取到的資料是:', task_disguise_info)
if task_disguise_info:
key, task_disguise_bytes = task_disguise_info
task_disguise_dict = json.loads(str(task_disguise_bytes, encoding="utf-8"))
user_name = task_disguise_dict.get('user_name')
task_id = task_disguise_dict.get('task_id')
key_word = task_disguise_dict.get('key_word')
item = task_disguise_dict.get('item')
def insert_into_table_from_disguise_text(self, item, user_name, task_id, key_word):
print('程序2', os.getpid())
print('多程序開始處理====>>>>')
程序池 執行緒池
程序池和執行緒池相似,所以這裡我們以程序池為例介紹,下面對程序池的討論完全適用於執行緒池 如果沒有特殊宣告 程序池是由伺服器預先建立的一組子程序,這些子程序的數目在3 10個之間 典型情況 執行緒池的數量應該和cpu數量差不多。程序池中的所有子程序都執行者相同的 並具有相同的屬性。因為程序池在伺服器...
執行緒池 程序池
執行緒池 程序池 池子解決什麼問題?1.建立 銷毀執行緒伴隨著系統開銷,如果過於頻繁會影響系統執行效率 2.執行緒併發數量過多,搶占系統資源,從而導致系統阻塞甚至宕機 3.能夠剛好的控制和管理池子裡面的執行緒和程序 concurrent.futures模組提供了高度封裝的非同步呼叫介面 thread...
程序池, 執行緒池
知識儲備 池 裝載固定數量介質,該介質值得是程序或者執行緒 為什麼要用?讓機器在自己可承受的範圍內去保證乙個高效的工作 from concurrent.futures import processpoolexecutor,threadpoolexecutor pool processpoolexec...