Rumah > Soal Jawab > teks badan
比如说,我cpu有四个线程,那么运行一个只能利用单线程的软件为什么不是这个进程把第一个核心的所有资源占用,而是每个线程占用百分之25?
黄舟2017-04-18 09:54:36
Apa yang anda inginkan boleh dicapai. Terdapat API yang berbeza yang boleh dipanggil pada sistem pengendalian yang berbeza Di Linux, sched_setaffinity dipanggil Pada Windows, SetProcessAffinityMask boleh digunakan untuk mengikat urutan tertentu dijalankan pada teras cpu. Sudah tentu, apa yang anda katakan adalah bahawa utas sepenuhnya menduduki semua menjalankan CPU. Ini tidak boleh direalisasikan dalam mod pengguna Sistem pengendalian semasa menjadualkan mod kernel boleh dijalankan, tetapi anda perlu menjadualkannya secara aktif Jika tidak, seluruh mesin akan muncul dalam animasi yang digantung, dan mesin tidak akan bertindak balas, tetapi ia sebenarnya adalah gelung tak terhingga.
高洛峰2017-04-18 09:54:36
Sistem pengendalian moden menggunakan mekanisme berbilang benang awalan untuk mengendalikan CPU Apabila mendapatkan kawalan CPU, hirisan masa diperoleh dan selepas hirisan masa tamat, kawalan diserahkan kepada benang lain.
天蓬老师2017-04-18 09:54:36
PC Rumah ialah sistem perkongsian masa, yang menggunakan putaran kepingan masa untuk memperuntukkan sumber secara sama rata. Apakah yang perlu saya lakukan jika satu utas memonopoli keseluruhan teras CPU dan utas bergelung tanpa henti