«multithreading» etiketlenmiş sorular

Çoklu iş parçacığı, bir bilgisayarın veya programın birden çok eşzamanlı yürütme akışını (genellikle iş parçacıkları olarak adlandırılır) kullanarak eşzamanlı veya eşzamansız olarak çalışma yeteneğidir.


7
Bir PyQt uygulamasında iş parçacığı oluşturma: Qt iş parçacığı veya Python iş parçacığı mı kullanıyorsunuz?
Verileri web bağlantısı üzerinden düzenli olarak alan bir GUI uygulaması yazıyorum. Bu alım biraz zaman aldığından, bu, geri alma işlemi sırasında kullanıcı arayüzünün yanıt vermemesine neden olur (daha küçük parçalara bölünemez). Bu nedenle, web bağlantısını ayrı bir çalışan iş parçacığına dış kaynak olarak kullanmak istiyorum. [Evet, biliyorum, şimdi iki sorunum …

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 …

8
Java Singleton ve Senkronizasyon
Lütfen Singleton ve Multithreading ile ilgili sorularımı netleştirin: Singleton'u çok iş parçacıklı bir ortamda Java'da uygulamanın en iyi yolu nedir? Birden çok iş parçacığı getInstance() aynı anda yönteme erişmeye çalıştığında ne olur ? Singleton yapabilir miyiz getInstance() synchronized? Singleton sınıflarını kullanırken senkronizasyon gerçekten gerekli mi?

5
iOS Arka Plan İş Parçacığını başlat
İOS cihazımda küçük bir sqlitedb var. Bir kullanıcı bir butona bastığında, verileri sqlite'dan alıp kullanıcıya gösteriyorum. Bu getirme kısmını bir arka planda yapmak istiyorum (UI ana iş parçacığını engellememek için). Bunu böyle yapıyorum - [self performSelectorInBackground:@selector(getResultSetFromDB:) withObject:docids]; Getirme ve biraz işlemden sonra kullanıcı arayüzünü güncellemem gerekiyor. Ancak (iyi bir uygulama …

1
C ++ 11'deki zaman uyumsuz (launch :: async), pahalı iş parçacığı oluşturmadan kaçınmak için iş parçacığı havuzlarını eski yapar mı?
Bu soru gevşek bir şekilde ilişkilidir: std :: thread C ++ 11'de havuzlanır mı? . Soru farklı olsa da niyet aynıdır: Soru 1: Pahalı iş parçacığı oluşturmayı önlemek için kendi iş parçacığı havuzlarınızı (veya üçüncü taraf kitaplığı) kullanmak hala mantıklı mı? Diğer sorudaki sonuç, std::threadhavuzda toplanmaya güvenemeyeceğinizdir (olabilir ya da …

6
GCD'de eşzamanlı ve seri sıralar
GCD'deki eşzamanlı ve seri kuyrukları tam olarak anlamakta zorlanıyorum. Bazı sorunlarım var ve birinin bana net bir şekilde ve o noktada cevap vermesini umuyorum. Görevleri birbiri ardına yürütmek için seri kuyrukların oluşturulduğunu ve kullanıldığını okuyorum. Ancak, aşağıdaki durumlarda ne olur: Bir seri kuyruk oluşturuyorum dispatch_asyncÜç kez A, B, C bloğu …

6
Paylaşılan_mutex'i artırma örneği (birden çok okuma / bir yazma)?
Bazı verileri sık sık okuması gereken çok iş parçacıklı bir uygulamam var ve bazen bu veriler güncelleniyor. Şu anda bir muteks bu verilere güvenli bir şekilde erişmeye devam ediyor, ancak bu pahalı çünkü birden fazla iş parçacığının aynı anda okuyabilmesini ve yalnızca bir güncelleme gerektiğinde bunları kilitlemesini istiyorum (güncelleme iş …


3
İş parçacığı çıkış kodu nedir?
Hata ayıklama sırasında Çıktı penceresinde bir iş parçacığı çıkış kodu tam olarak nedir? Bana hangi bilgileri veriyor? Bir şekilde yararlı mı yoksa beni rahatsız etmemesi gereken içsel bir şey mi? The thread 0x552c has exited with code 259 (0x103). The thread 0x4440 has exited with code 0 (0x0). Önemiyle birlikte …

9
.NET MemoryCache'nin doğru kullanımı için kilitleme kalıbı
Bu kodun eşzamanlılık sorunları olduğunu varsayıyorum: const string CacheKey = "CacheKey"; static string GetCachedData() { string expensiveString =null; if (MemoryCache.Default.Contains(CacheKey)) { expensiveString = MemoryCache.Default[CacheKey] as string; } else { CacheItemPolicy cip = new CacheItemPolicy() { AbsoluteExpiration = new DateTimeOffset(DateTime.Now.AddMinutes(20)) }; expensiveString = SomeHeavyAndExpensiveCalculation(); MemoryCache.Default.Set(CacheKey, expensiveString, cip); } return expensiveString; } …



1
NSDefaultRunLoopMode vs NSRunLoopCommonModes
Arkasından büyük bir dosya veya başka bir şey indirmeye çalıştığımda UIScrollView, MPMapViewiPhone ekranına dokunduğum anda indirme işlemi durduruluyor. Neyse ki, Jörn'ün harika bir blog yazısı , NSRunLoopCommonModesbağlantı için alternatif bir seçenek öneriyor . Bu, NSDefaultRunLoopMode ve NSRunLoopCommonModes olmak üzere iki modun ayrıntılarına bakmamı sağlıyor, ancak elma belgesi, şunu söylemek dışında …


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.