İçeriğe geç

Sızdırılan eşzamanlılık tutamacı (ARCH2085)

Anahtar python.performance.leaked-concurrency-handle · Önem warning · Kategori performance

Bir kilit acquire edilip serbest bırakılmadan kullanıldığında, hata oluşursa kilit asla bırakılmaz ve kilitlenmeye yol açar. with ile sınırlı yaşam süresi sağlayın.

import threading
lock = threading.Lock()
def increment(counter):
lock.acquire()
counter.value += 1
lock.release()
import threading
lock = threading.Lock()
def increment(counter):
with lock:
counter.value += 1

Kilitleri with lock: ile alın; iş parçacıklarını join edin ya da bağlam yöneticisiyle sarın.