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

  • DudeFromUkraine

    DudeFromUkra

    7 Ocak 2008
  • Floortile83

    Floortile83

    16 Ocak 2010
  • NikkoNantone

    NikkoNantone

    21 Kasım 2011