«python-multiprocessing» etiketlenmiş sorular

8
Python çoklu işleme PicklingError: <type 'function'> seçilemiyor
Daha basit bir örnekle hatayı yeniden oluşturamadığım için üzgünüm ve kodumu göndermek için çok karmaşık. Programı normal Python yerine IPython kabuğunda çalıştırırsam işler iyi gider. Bu sorunla ilgili daha önceki bazı notlara baktım. Bunların hepsine, bir sınıf işlevi içinde tanımlanan işlevi çağırmak için havuz kullanılması neden olmuştur. Ama benim için …

12
Birden çok işleme tabi tutulan bir işlevin dönüş değerini nasıl kurtarabilirim?
Aşağıdaki örnek kodda, işlevin dönüş değerini kurtarmak istiyorum worker. Bunu nasıl yapabilirim? Bu değer nerede saklanır? Örnek Kod: import multiprocessing def worker(procnum): '''worker function''' print str(procnum) + ' represent!' return procnum if __name__ == '__main__': jobs = [] for i in range(5): p = multiprocessing.Process(target=worker, args=(i,)) jobs.append(p) p.start() for proc …

1
Havuz: map_async ve imap arasındaki fark nedir?
Python'ın kullanmayı öğrenmek çalışıyorum multiprocessingpaketi, ama ben arasındaki farkı anlayamıyorum map_asyncve imap. Ben fark olduğunu hem map_asyncve imapasenkron olarak yürütülür. Peki birini ne zaman diğerinin üzerine kullanmalıyım? Ve döndürülen sonucu nasıl almalıyım map_async? Böyle bir şey kullanmalı mıyım? def test(): result = pool.map_async() pool.close() pool.join() return result.get() result=test() for i …

2
Bir sonuç kuyruğunu birkaç işlem arasında paylaşma
multiprocessingModül belgeleri, bir kuyruğun başlatılan bir işleme nasıl geçirileceğini gösterir multiprocessing.Process. Ancak bir kuyruğu, başlatılan zaman uyumsuz çalışan işlemlerle nasıl paylaşabilirim apply_async? Dinamik birleşmeye veya başka bir şeye ihtiyacım yok, sadece çalışanların sonuçlarını (tekrar tekrar) üsse geri bildirmeleri için bir yol. import multiprocessing def worker(name, que): que.put("%d is done" % …


3
Bir alt işlemde ayrı bir dosya / komut dosyası oluşturmadan veya yazmadan işlevi çalıştırmak mümkün mü?
import subprocess def my_function(x): return x + 100 output = subprocess.Popen(my_function, 1) #I would like to pass the function object and its arguments print output #desired output: 101 Yalnızca ayrı komut dosyaları kullanarak alt işlemlerin açılmasıyla ilgili belgeler buldum. İşlev nesnelerini nasıl geçireceğini veya işlev kodunu geçirmenin kolay bir yolunu …
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.