Nasıl farklı CPU çekirdek iş parçacığı spawn?
Hadi C programı aldım " # hesaplama WAV pahalı gibi kodlama listesi MP3 dosyaları içine bir şey yaptı. Normalde bir dosyaları teker teker teker kodlamak, ama bu program kaç CPU çekirdeği vardı anlamaya istedim diyelim ve her bir çekirdekte bir kodlama harikasınız. Yani, ben çalışma programı üzerine bir dört çekirdekli İŞLEMCİ, programı, rakamlar bir dört çekirdekli İŞLEMCİ, rakamlar orada dört çekirdek, sonra yumurtlar dört iş parçacığı için kodlama, her biri kendi başına çalışan ayrı bir CPU. Bunu nasıl yaparım?
Ve bu çekirdek birden fazla fiziksel İŞLEMCİ üzerinde dağılmış olsaydı daha farklı olmaz mıydı? Gibi, iki dört çekirdekli İŞLEMCİ ile bir makine vardı, orada herhangi bir özel hususlar veya sekiz çekirdek iki eşit ölür Windows kabul arasında.
CEVAP
Bunu yaparken rahatsız etmeyin.
Bunun yerine Thread Pool kullanın. İş parçacığı havuzu yeni bir iş parçacığı için sorgu yapabilirsiniz mekanizması (aslında bir sınıf) çerçeve.
Yeni bir konu sormak için zaman ya da yeni bir isim ya da bir iş parçacığı serbest alana kadar iş enqueue. Bu şekilde çerçeve daha fazla iş parçacığı oluşturmak gerekir hava karar vermeden sorumlu veya mevcut CPU sayısına bağlı olarak değil.
Edit: ayrıca önceden belirtildiği gibi, işletim sistemi farklı İşlemciler arasında iş dağıtımı sorumlu.
Nasıl dönüşüm gıt çekirdek ile işi bit...
Nasıl normal bir sanal makine Docker f...
Aynı dalda iki farklı işliyor arasında...
Nasıl iki farklı dalları dosyaları kar...
Nasıl ilerleme iletişim ve arka plan i...