SORU
13 HAZİRAN 2010, Pazar


Çoklu iş parçacığı havuzu Havuza benzer Python?

İşçi olduğu için orada Havuz bir sınıfiş parçacığıbenzer Pool class? çoklu modül

Örneğin bir harita işlevi parallelize için kolay bir yol gibi

def long_running_func(p):
    c_func_no_gil(p)

p = multiprocessing.Pool(4)
xs = p.map(long_running_func, range(100))

ancak yeni işler yaratmak yükü olmadan bunu yapmak istiyorum.

GİL hakkında biliyorum. Ancak, benim usecase, işlevi için python sarıcı gerçek işlev çağrısı önce GİL yayınlayacak IO-ilişkili C fonksiyon olacak.

Benim kendi iş parçacığı havuzu yazmak zorunda mıyım?

CEVAP
2 AĞUSTOS 2010, PAZARTESİ


Ben aslında öğrendimmultiprocessing Bu modül, iş parçacığı tabanlı Havuzu arabirimi, ancak biraz gizli ve düzgün belgelenmiş değil.

Üzerinden alınabilir

from multiprocessing.pool import ThreadPool

Kukla Süreci bir python sınıf bir iplik sarma ile kodlandı. Bu iş parçacığı tabanlı bir İşlem sınıfı docs kısaca bahsedilen " multiprocessing.dummy bulunabilir. Bu kukla modülü güya bütün Çoklu işlem arayüzünün temel sağlar.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Kamikazeepanda

    Kamikazeepan

    5 ŞUBAT 2006
  • Keith Anthe

    Keith Anthe

    26 NİSAN 2011
  • JeezyVEVO

    JeezyVEVO

    12 Mayıs 2009