Bir işlemde yaklaşık 300 destek dişi oluşturuyorum. İş parçacığı kimliğine göre belirli bir iş parçacığına katılmanın bir yolu var mı?Özel bir destek dişine katılın
cevap
Göksel, boost::thread
dosyalarınızı nasıl kaydedeceğinize bağlıdır. Eğer (T = boost::thread*
birlikte) bir kap içinde onları kurtarmak Eğer bir yerde senin konuları kaydetmek ve adil artırmak gelmez çünkü bu mümkün değil işaretçi kaydetmeden new boost::thread
kullanmak istemiyorsanız, sadece, Ancak
for(iterator it = ctn.begin(); it != ctn.end(); ++it){
if(it->get_id() == join_thread_id){
it->join();
break;
}
}
gibi bir şey kullanabilirsiniz herhangi bir otomatik defter tutma işlevi sağlamaz.
1. Uyarı: Kimliği kaydetmek için boost::thread::id
'u kullanmanız gerektiğini unutmayın.
2. Not: std::map<boost::thread::id,boost::thread*>
bu tür işler için kullanışlı olabilir.
veya 'find_if (begin (ctn), bitiş (ctn), [join_thread_id] (yineleyici) {return it-> get_id() == join_thread_id;}); –
Çok fazla iş parçacığı varsa, harita daha iyi değil mi? Bunu aklımda performansla soruyorum. –
@ AdriC.S .: Bir çok şeyin anlamına bağlıdır. Bir harita argüman sayısı (alt doğrusal arama karmaşıklığı) ile güzel bir şekilde ölçeklendirilir, ancak gerçek öğelerin sayısına bağlı olarak, küçük bir vektör küçük bir haritayı geride bırakabilir. –
- 1. Apex'te bir dizi dizeye katılın
- 2. Objective-C'deki bir diziye katılın.
- 3. Bu destek için bir destek :: shared_ptr alma
- 4. Destek Özel PowerShell cmdlet'i edinme Yardımı
- 5. Kendine Katılın Eloquent
- 6. Oracle dinamik bölüme katılın
- 7. AVM2'de özel bir (destek) sınıfı alt sınıflandırma
- 8. destek istisnaları
- 9. Bir Oracle tablo değerli işlevine katılın
- 10. SQL Server tablolarına benzer bir ifadeye katılın
- 11. Bir Sol Sınırı ilk tabloya katılın
- 12. Nesnelerin bir dizisinden benzersiz dizelere katılın
- 13. matplotlib içinde NaN değerlerine katılın
- 14. Jilet İçinde metin + değişkenine katılın
- 15. Raylar: Birden fazla koşulla katılın
- 16. java'da birden çok yineleyiciye katılın
- 17. Android google cihazların destek/destek listesini çalma
- 18. Clojure REPL destek hattı gibi destek
- 19. Elasticsearch içinde geri planlanmış toplamalara katılın
- 20. Özel Destek İletişim Kutusu Parça metni yanlış renk
- 21. Android destek Araç Çubuğu düzgün şekilde özel olarak gösterilemiyor
- 22. İki sütundaki tabloya ait tabloya katılın
- 23. Pandalar: Farklı isimlerle sahada DataFrames'e katılın?
- 24. arasında, daha önce dize katılın ve
- 25. LINQ Öğeleri bulmak için katılın Listeye girmiyor
- 26. sql 1'e çok katılın - ana
- 27. Tek adımda bir sınırlayıcıyla Dize listesi öğelerine katılın
- 28. Impala'da başka bir tabloda MAX satırı ile satır katılın
- 29. Gradle ve Android destek kütüphanesi
- 30. android - destek v7'de
Bu konuları nasıl yönetiyorsunuz? (Bir şekilde dişlerin koptuğunu hatırlıyorsunuz, değil mi?) –