«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.



5
Linux altında GCC'de std :: thread kullanmak için doğru bağlantı seçenekleri nelerdir?
Merhaba std::threadG ++ ile kullanmaya çalışıyorum . İşte test kodum #include <thread> #include <iostream> int main(int, char **){ std::thread tt([](){ std::cout<<"Thread!"<<std::endl; }); tt.join(); } Derliyor, ama çalıştırmaya çalıştığımda sonuç: terminate called after throwing an instance of 'std::system_error' what(): Operation not permitted Aborted Derleyici sürümüm: $ g++ --version g++ (Ubuntu/Linaro 4.6.1-9ubuntu3) …

5
C ++ 11'de std :: atomic :: Compare_exchange_weak () 'i anlama
bool compare_exchange_weak (T& expected, T val, ..); compare_exchange_weak(), C ++ 11'de sağlanan karşılaştırma-değişim ilkelerinden biridir. Bu var zayıf o nesnenin değeri eşit olsa bile false döndüren anlamında expected. Bunun nedeni, uygulamak için bir dizi talimatın (x86'daki gibi değil) kullanıldığı bazı platformlardaki sahte başarısızlıktır . Bu tür platformlarda, bağlam anahtarı, aynı …


8
Değilse, Java Thread interrupt () yöntemini kim çağırıyor?
Pratikte Java Eşzamanlılığını okudum ve yeniden okudum, burada konuyla ilgili birkaç iş parçacığı okudum, InterruptedException ile uğraşmak için IBM makalesini okudum ve yine de anlamadığım ve kırılabileceğini düşündüğüm bir şey var iki soruya bölünür: Diğer iş parçacıklarını asla kendim kesmiyorsam, InterruptedException'ı ne tetikleyebilir ? Interrupt () kullanarak diğer iş parçacıklarını …

6
Java'da bir nesnenin monitörünün anlamı nedir? Neden bu kelimeyi kullanıyorsunuz?
Java konuları hakkında makaleler okurken sık sık şu ifadeyi fark ediyorum: "mevcut iş parçacığı, bu nesnenin monitörünün sahibidir". Anlamı anlıyorum: iş parçacığı nesne üzerinde işlem yapma hakkına sahip. Ama neden "nesnenin kilidi" yerine "nesnenin monitörü" ifadesini kullandığımıza şaşırdım. Kısaca, 'monitör' kelimesinin anlamını bilmiyorum Soru tuhaf ve basit olabilir. Ama sorunun …

6
Kilitsiz çoklu diş açma gerçek diş açma uzmanları içindir
Bir içinden okuyordu cevap olduğunu Jon Skeet bir soruya ve o bu sözü o verdi: Benim ilgilendiğim kadarıyla, kilitsiz çoklu iş parçacığı, benim biri olmadığım gerçek diş açma uzmanları içindir. Bunu ilk kez duymuyorum, ancak kilitsiz çoklu iş parçacığı kodunun nasıl yazılacağını öğrenmekle ilgileniyorsanız, bunu gerçekte nasıl yaptığınız hakkında konuşan …

6
ThreadLocal değişkeninin performansı
ThreadLocalNormal alandan daha yavaş değişkenden ne kadar okunur ? Daha somut olarak, basit nesne oluşturma, ThreadLocaldeğişkene erişimden daha hızlı mı yoksa daha mı yavaş ? Yeterince hızlı olduğunu varsayıyorum, böylece ThreadLocal<MessageDigest>örneğe sahip olmak , MessageDigesther seferinde örnek oluşturmaktan çok daha hızlıdır . Ancak bu, örneğin bayt [10] veya bayt [1000] …

6
Kilitli bir nesne, içinde bir istisna olursa kilitli kalır mı?
Ac # threading uygulamasında, bir nesneyi kilitlemem gerekirse, bir sıra diyelim ve bir istisna olursa nesne kilitli kalır mı? İşte sözde kod: int ii; lock(MyQueue) { MyClass LclClass = (MyClass)MyQueue.Dequeue(); try { ii = int.parse(LclClass.SomeString); } catch { MessageBox.Show("Error parsing string"); } } Anladığım kadarıyla, yakalamadan sonraki kod çalışmıyor - …

13
C ++ uçucu anahtar sözcüğü bellek çiti sağlar mı?
onu anlıyorum volatile derleyiciye değerin değiştirilebileceği bilgi verdiğini , ancak bu işlevi başarmak için derleyicinin çalışmasını sağlamak için bir bellek çiti eklemesi gerekiyor mu? Anladığım kadarıyla, uçucu nesneler üzerindeki işlemlerin sırası yeniden düzenlenemez ve korunmalıdır. Bu, bazı hafıza sınırlarının gerekli olduğunu ve bunun gerçekten bir yolu olmadığını ima ediyor gibi …




6
Bir std :: iş parçacığının hala çalışıp çalışmadığını nasıl kontrol edebilirim?
A'nın std::threadhala çalışıp çalışmadığını nasıl kontrol edebilirim (platformdan bağımsız bir şekilde)? Bir timed_join()yöntemi yoktur ve joinable()bunun için tasarlanmamıştır. Bir muteksi std::lock_guardiş parçacığı içinde kilitlemeyi ve try_lock()hala kilitli olup olmadığını (iş parçacığı çalışıyor) belirlemek için muteks yöntemini kullanmayı düşündüm , ancak bana gereksiz yere karmaşık görünüyor. Daha zarif bir yöntem biliyor …

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.