«synchronization» etiketlenmiş sorular

Senkronizasyon, aynı programı çalıştıran bir süreçler grubu (süreç senkronizasyonu) veya verilerin temsilleri (veri senkronizasyonu) olmak üzere tutarlı bir temsil sağlamak için kontrollerin kullanılması anlamına gelir.

8
Kilit tam olarak nasıl çalışır?
İş parçacığı güvenli olmayan nesneleri kullanmak için kodu böyle bir kilit ile sarın görüyorum: private static readonly Object obj = new Object(); lock (obj) { // thread unsafe code } Birden fazla iş parçacığı aynı koda eriştiğinde ne olur (bir ASP.NET web uygulamasında çalıştığını varsayalım). Kuyrukta mı? Eğer öyleyse ne …

22
Java ile senkronize (bu) kaçının?
Java senkronizasyonu hakkında SO'ya her soru çıktığında, bazı insanlar synchronized(this)kaçınılması gerektiğini belirtmek için çok istekli olurlar . Bunun yerine, özel bir referans üzerinde bir kilidin tercih edileceğini iddia ediyorlar. Verilen nedenlerden bazıları: Bazı kötü kodlar kilidini çalabilir (bu çok popüler, ayrıca "yanlışlıkla" bir varyantı var) aynı sınıftaki tüm senkronize yöntemler …

5
Java'nın senkronize anahtar kelimenin C # sürümü?
C # java "senkronize" anahtar kelimenin kendi sürümüne sahip mi? Yani java'da bir işleve, bir nesneye veya bir kod bloğuna şu şekilde belirtilebilir: public synchronized void doImportantStuff() { // dangerous code goes here. } veya public void doImportantStuff() { // trivial stuff synchronized(someLock) { // dangerous code goes here. } …

7
Atomik / uçucu / senkronize arasındaki fark nedir?
Atomik / uçucu / senkronize dahili olarak nasıl çalışır? Aşağıdaki kod blokları arasındaki fark nedir? Kod 1 private int counter; public int getNextUniqueIndex() { return counter++; } Kod 2 private AtomicInteger counter; public int getNextUniqueIndex() { return counter.getAndIncrement(); } Kod 3 private volatile int counter; public int getNextUniqueIndex() { return …


5
Senkronize, Objective-C'de nasıl kilitlenir / kilitlenir?
@Synchronized karşılıklı dışlama sağlamak için "kilit" ve "kilit açma" işlevlerini kullanmıyor mu? Peki o zaman kilitleme / kilit açma nasıl yapılır? Aşağıdaki programın çıktısı sadece "Merhaba Dünya" dır. @interface MyLock: NSLock<NSLocking> @end @implementation MyLock - (id)init { return [super init]; } - (void)lock { NSLog(@"before lock"); [super lock]; NSLog(@"after lock"); …

10
Senkronizasyon ve Kilit
java.util.concurrentAPI Lock, kritik kaynağa erişmek için temel olarak denetimi serileştiren as adında bir sınıf sağlar . Bu gibi bir yöntem verir park()ve unpark(). synchronizedAnahtar kelime, yöntem wait()ve notify() notifyAll()yöntemleri kullanabilirsek benzer şeyler yapabiliriz . Uygulamada bunlardan hangisinin daha iyi olduğunu merak ediyorum ve neden?

8
Senkronize edilmiş statik yöntemler Java'da nasıl çalışır ve Hazırda Bekletme varlıklarını yüklemek için kullanabilir miyim?
Temel veri erişimini gerçekleştirmek için Hazırda Beklet işlevlerini çağıracak statik yöntemlere sahip bir util sınıfım varsa. synchronizedİplik güvenliğini sağlamak için yöntemi yapmanın doğru yaklaşım olup olmadığını merak ediyorum . Bu bilgi aynı DB örneğine erişimini önlemek istiyorum. Ancak, şimdi aşağıdaki kod getObjectByIdbelirli bir sınıf tarafından çağrıldığında tüm sınıflar için çağrılmasını …

8
Mutex örneği / öğretici? [kapalı]
Kapalı. Bu soru Yığın Taşması yönergelerine uygun değil . Şu anda cevapları kabul etmiyor. Bu soruyu geliştirmek ister misiniz? Soruyu Yığın Taşması için konuyla ilgili olacak şekilde güncelleyin . 5 ay önce kapalı . Bu soruyu geliştir Çok iş parçacıklığında yeniyim ve mutekslerin nasıl çalıştığını anlamaya çalışıyordum. Çok fazla Google …


6
Java statik başlatıcıları iş parçacığı güvenli midir?
Ben bir kayıt defterinde bazı denetleyicileri başlatmak için statik bir kod bloğu kullanıyorum. Benim sorum bu nedenle, bu statik kod bloğunun sınıf ilk yüklendiğinde yalnızca bir kez kesinlikle çağrılacağını garanti edebilir miyim? Bu kod bloğu çağrıldığında garanti edemez, Classloader ilk yüklediğinde onun tahmin ediyorum anlıyorum. Statik kod bloğundaki sınıfta senkronize …

10
C ++ 0x semafor yok mu? Konuları nasıl senkronize edebilirim?
C ++ 0x semaforlar olmadan gelecek doğru mu? Semafor kullanımıyla ilgili olarak Stack Overflow ile ilgili bazı sorular var. Onları (posix semaforları) her zaman bir iş parçacığı başka bir iş parçacığında bazı olay için beklemek izin kullanın: void thread0(...) { doSomething0(); event1.wait(); ... } void thread1(...) { doSomething1(); event1.post(); ... …


5
Java'da bir sınıfın farklı örneklerini çalıştıran evreler arasında statik bir değişken nasıl senkronize edilir?
synchronizeBir yöntemden önce anahtar kelimeyi kullanmanın o nesneye senkronizasyon getirdiğini biliyorum . Yani, nesnenin aynı örneğini çalıştıran 2 iş parçacığı senkronize edilecektir. Bununla birlikte, senkronizasyon nesne düzeyinde olduğundan, nesnenin farklı örneklerini çalıştıran 2 iş parçacığı senkronize edilmeyecektir. Bir Java sınıfında yöntem tarafından çağrılan statik bir değişkenimiz varsa, bunun sınıfın örnekleri …

5
CancellationToken özelliği nasıl kullanılır?
RulyCanceler sınıfı için önceki kodla karşılaştırıldığında , kullanarak kodu çalıştırmak istedim CancellationTokenSource. İptal Jetonlarında belirtildiği gibi , yani bir istisna atmadan / yakalamadan nasıl kullanırım ? IsCancellationRequestedMülkü kullanabilir miyim ? Bunu şu şekilde kullanmaya çalıştım: cancelToken.ThrowIfCancellationRequested(); ve try { new Thread(() => Work(cancelSource.Token)).Start(); } catch (OperationCanceledException) { Console.WriteLine("Canceled!"); } ancak …

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.