Uyarı: Bu API kullanımdan kaldırıldı ve TensorFlow'un gelecekteki bir sürümünde , değişim kararlı hale geldikten sonra kaldırılacaktır.

Bu sayfa, Cloud Translation API ile çevrilmiştir.
Switch to English

MutexLock

genel final sınıfı MutexLock

Bir muteks kaynağını kilitler. Çıktı kilittir. Kilit tensörü olduğu sürece

yaşıyorsa, bu muteks ile "MutexLock" kullanmak için herhangi bir istek bekleyecektir.

Bu, "MutexLockIdentity" ile birlikte kullanıldığında kritik bir bölüm oluşturmak için özellikle yararlıdır:

mutex = mutex_v2(
   shared_name=handle_name, container=container, name=name)
 
 def execute_in_critical_section(fn, *args, **kwargs):
   lock = gen_resource_variable_ops.mutex_lock(mutex)
 
   with ops.control_dependencies([lock]):
     r = fn(*args, **kwargs)
 
   with ops.control_dependencies(nest.flatten(r)):
     with ops.colocate_with(mutex):
       ensure_lock_exists = mutex_lock_identity(lock)
 
     # Make sure that if any element of r is accessed, all of
     # them are executed together.
     r = nest.map_structure(tf.identity, r)
 
   with ops.control_dependencies([ensure_lock_exists]):
     return nest.map_structure(tf.identity, r)
 
"fn" kritik bölümde çalışırken, bu kritik bölümü kullanmak isteyen başka hiçbir işlev çalışmayabilir.

Çoğunlukla kullanım durumu, aynı grafiğin paralel olarak iki uygulamasının "fn" çalıştırmak istemesidir; ve aynı anda yalnızca birinin yürütülmesini sağlamak istiyoruz. Bu özellikle, "fn" bir seferde bir veya daha fazla değişkeni değiştiriyorsa önemlidir.

İki ayrı işlevin bir kaynağı paylaşması gerekiyorsa da yararlıdır, ancak kullanımın özel olmasını sağlamak istiyoruz.

Kamu Yöntemleri

Çıktı <Nesne>
asOutput ()
Bir tensörün sembolik tutamacını döndürür.
statik MutexLock
oluştur ( Kapsam kapsamı, İşlenen <?> mutex)
Yeni bir MutexLock işlemini saran bir sınıf oluşturmak için fabrika yöntemi.
Çıktı <?>
mutexLock ()
Paylaşılan bir göstericiyi muteksteki kilit için tutan bir tensör; Tensor yok edildiğinde, paylaşılan işaretçideki kullanım sayısı 1 azalır.

Devralınan Yöntemler

Kamu Yöntemleri

public Output <Nesne> asOutput ()

Bir tensörün sembolik tutamacını döndürür.

TensorFlow işlemlerine yönelik girdiler, başka bir TensorFlow işleminin çıktılarıdır. Bu yöntem, girdinin hesaplanmasını temsil eden sembolik bir tutamaç elde etmek için kullanılır.

public static MutexLock create ( Scope kapsamı, Operand <?> mutex)

Yeni bir MutexLock işlemini saran bir sınıf oluşturmak için fabrika yöntemi.

Parametreler
dürbün mevcut kapsam
muteks Kilitlenecek muteks kaynağı.
İadeler
  • Yeni bir MutexLock örneği

public Çıktı <?> mutexLock ()

Paylaşılan bir göstericiyi muteksteki bir kilit için tutan bir tensör; Tensör yok edildiğinde, paylaşılan işaretçideki kullanım sayısı 1 azalır. 0'a ulaştığında, kilit serbest bırakılır.