Başlıca sorum, Threading kilit nesnesini atomik kilitler oluşturuyor mu? Kilidin modül belgelerinde atomik olduğunu söylemez. pythons mutex belgelerinde, mutex kilidinin atomik olduğunu söyler ama aslında olmadığı bir yerde okudum gibi görünür. Birisi bana bu konu hakkında biraz bilgi verebilir mi diye merak ediyorum. Hangi kilidi kullanmalıyım? Şu anda benim scriptlerimi kullanarak çalıştırıyorum python 2.4Mutex kilitler vs Diş açma kilitleri. Kullanılacak?
7
A
cevap
13
Atomik olmasalar da herhangi bir tabiatın kilitleri oldukça yararsız olurdu - kilidin bütün noktası daha yüksek seviyeli atomik işlemlere izin vermektir.
İş parçacığının tüm eşitleme nesneleri (kilitler, perdeler, semaforlar, sınırlayıcılar), muteks gibi atomik yönergeleri kullanır. mutex
beri
Sen gerektiği kullanım threading
, aslında ileriye kaldırılmış (ve Python 3'te kaldırıldı) olduğunu.
İlgili konular
- 1. CROSS APPLY vs DIŞ APPLY hız farkı
- 2. boost scoped_lock vs düz kilitleme/kilit açma
- 3. boost :: lock_guard vs destek :: mutex :: scoped_lock
- 4. Spring Security, eşzamanlı oturum açma girişimleriyle kullanıcıyı kilitler
- 5. Apache Zookeeper/Curator kilitler üzerinde yaşam süresi
- 6. MySQL Çoklu masa kilitleri
- 7. Resharper diş telleri
- 8. Std :: mutex ile başlık dosyası için clr seçeneğini kapatın :: mutex
- 9. Neden std :: mutex, CRITICAL_SECTION
- 10. Boolean Animasyon özelliği kilitler
- 11. Bir mutex değişkeninin bir while döngüsünde işlenmesi
- 12. Bir kilit (diş) atomik midir?
- 13. Boost mutex throwing (tek?) Istisnası
- 14. Bir Mutex oluşturma bir DirectoryNotFoundException
- 15. Wix HeatFile Görev Kilitler Dll
- 16. vba excel tüm hücreleri kilitler
- 17. NSFileManager removeItemAtPath ana parçayı kilitler
- 18. Pthread'de okuma/yazma kilitleri nasıl uygulanır?
- 19. Global kilitleri mysql (innodb) içinde nasıl görebilirim?
- 20. Synchronized Objective-C'de kilitleme/kilit açma nasıldır?
- 21. Sızdırmazlık olmadan diş güvenli statik değişkenler?
- 22. Heroku çözme diş ipi hatası nasıl?
- 23. undefined method {"diş" için = "tara" => ""}: Hash
- 24. Her bir diş için Cuda yazmaçları
- 25. İplik güvenli diş tekniği. Bir şey mi eksik?
- 26. Parallelism'de kullanılacak çekirdeklerin ayarlanması
- 27. SilverStripe'de oturum açma oturumu açma
- 28. Özel üye ile boost mutex garip hatası
- 29. Pthread Mutex: pthread_mutex_unlock() çok fazla zaman harcar
- 30. 10 PHP // Thread // Mutex // Cond Kullanılıyor
Teşekkürler, sadece kontrol etmek istedim. – Richard
Ve 'mutex' modülünü kullanmamak için daha büyük bir neden: kilitleri iş parçacığıdır. Tek programlı programlarda 'sched' modülünü kullanarak kullanılırlar. Esasen, işe yaramazlar. –
@Thomas Wouters, bu yüzden mutex modülünü python 3'te tutmuyorlar. – Richard