ຂະບວນການສາມາດມີກະທູ້ຫຼາຍປານໃດໃນ Linux?
Linux ບໍ່ມີຫົວຂໍ້ແຍກຕ່າງຫາກຕໍ່ຂະບວນການຈໍາກັດ, ແຕ່ມີຂອບເຂດຈໍາກັດກ່ຽວກັບຈໍານວນຂະບວນການທັງຫມົດໃນລະບົບ (ຍ້ອນວ່າຫົວຂໍ້ພຽງແຕ່ດໍາເນີນການກັບພື້ນທີ່ທີ່ຢູ່ຮ່ວມກັນໃນ Linux). ຂີດຈຳກັດກະທູ້ນີ້ສໍາລັບ linux ສາມາດຖືກແກ້ໄຂໃນເວລາແລ່ນໂດຍການຂຽນຂອບເຂດທີ່ຕ້ອງການເປັນ /proc/sys/kernel/threads-max.
ເຈົ້າຊອກຫາຈໍານວນກະທູ້ສູງສຸດໃນ Linux ໄດ້ແນວໃດ?
Linux – ການແກ້ໄຂ 1:
- cat /proc/sys/kernel/threads-max. …
- echo 100000 > /proc/sys/kernel/threads-max. …
- ຈໍານວນກະທູ້ = ຫນ່ວຍຄວາມຈໍາ virtual ທັງຫມົດ / (ຂະຫນາດ stack * 1024 * 1024) …
- ulimit -s newvalue ulimit -v newvalue. …
- ເທິງ -b -H -u myfasuser -n 1 | wc -l. …
- ເທິງ -b -u myfasuser -n 1 | wc -l. …
- cat /proc/sys/kernel/threads-max.
ຂະບວນການສາມາດບັນຈຸກະທູ້ສູງສຸດເທົ່າໃດ?
ດັ່ງນັ້ນພາຍໃຕ້ 32-bit Windows, ສໍາລັບຕົວຢ່າງ, ບ່ອນທີ່ແຕ່ລະຂະບວນການມີພື້ນທີ່ທີ່ຢູ່ຂອງຜູ້ໃຊ້ຂອງ 2GB, ໃຫ້ແຕ່ລະກະທູ້ມີຂະຫນາດ stack 128K, ທ່ານຄາດວ່າຈະສູງສຸດຢ່າງແທ້ຈິງ. 16384 ກະທູ້ (= 2*1024*1024 / 128). ໃນການປະຕິບັດ, ຂ້ອຍພົບວ່າຂ້ອຍສາມາດເລີ່ມຕົ້ນໄດ້ປະມານ 13,000 ພາຍໃຕ້ XP.
ຂະບວນການສາມາດມີກະທູ້ໄດ້ຫຼາຍປານໃດ?
ກະທູ້ແມ່ນຫົວ ໜ່ວຍ ຂອງການປະຕິບັດພາຍໃນຂະບວນການ. ຂະບວນການສາມາດມີທຸກບ່ອນຈາກ ພຽງແຕ່ຫນຶ່ງກະທູ້ກັບຫຼາຍກະທູ້.
ຂ້ອຍຈະເຫັນກະທູ້ໃນ Linux ໄດ້ແນວໃດ?
ການນໍາໃຊ້ຄໍາສັ່ງເທິງ
ຄໍາສັ່ງເທິງສາມາດສະແດງການເບິ່ງແບບສົດໆຂອງຫົວຂໍ້ສ່ວນບຸກຄົນ. ເພື່ອເປີດໃຊ້ການເບິ່ງ thread ໃນຜົນໄດ້ຮັບດ້ານເທິງ, ເອີ້ນທາງເທິງດ້ວຍຕົວເລືອກ “-H”. ນີ້ຈະສະແດງລາຍການຫົວຂໍ້ Linux ທັງໝົດ. ນອກນັ້ນທ່ານຍັງສາມາດສະຫຼັບເປີດຫຼືປິດຮູບແບບການເບິ່ງກະທູ້ໃນຂະນະທີ່ເທິງແລ່ນ, ໂດຍການກົດປຸ່ມ 'H'.
ຫຼັກສາມາດແລ່ນໄດ້ຈັກກະທູ້?
ແກນ CPU ດຽວສາມາດມີ ເຖິງ 2 ກະທູ້ຕໍ່ຫຼັກ. ຕົວຢ່າງ, ຖ້າ CPU ເປັນ dual core (ie, 2 cores) ມັນຈະມີ 4 threads. ແລະຖ້າ CPU ເປັນ Octal core (ie, 8 core) ມັນຈະມີ 16 threads ແລະໃນທາງກັບກັນ.
ຂະໜາດສູງສຸດຂອງສະນຸກເກີກະທູ້ແມ່ນຫຍັງ?
ຂະໜາດສະລອຍນ້ຳເລີ່ມຕົ້ນແມ່ນ 1, ຂະໜາດສະລອຍນ້ຳຫຼັກແມ່ນ 5, ຂະໜາດສະນຸກເກີສູງສຸດແມ່ນ 10 ແລະຄິວແມ່ນ 100. ເມື່ອຄໍາຮ້ອງຂໍເຂົ້າມາ, ກະທູ້ຈະຖືກສ້າງຂື້ນເຖິງ 5 ແລະຫຼັງຈາກນັ້ນວຽກງານຈະຖືກເພີ່ມໃສ່ຄິວຈົນກ່ວາມັນໄປຮອດ 100. ເມື່ອຄິວເຕັມຫົວຂໍ້ໃຫມ່ຈະຖືກສ້າງຂື້ນເຖິງ maxPoolSize .
ເຈົ້າສາມາດສ້າງກະທູ້ຫຼາຍເກີນໄປບໍ?
ໃນເຄື່ອງ Windows, ບໍ່ມີຂອບເຂດຈໍາກັດສໍາລັບຫົວຂໍ້. ດັ່ງນັ້ນ, ພວກເຮົາສາມາດສ້າງກະທູ້ຫຼາຍເທົ່າທີ່ພວກເຮົາຕ້ອງການ, ຈົນກ່ວາລະບົບຂອງພວກເຮົາຫມົດຄວາມຊົງຈໍາຂອງລະບົບທີ່ມີຢູ່.
ຂ້າພະເຈົ້າຄວນວາງກະທູ້ຫຼາຍປານໃດ?
ໂດຍຫລັກການແລ້ວ, ບໍ່ມີ I/O, synchronization, ແລະອື່ນໆ, ແລະບໍ່ມີຫຍັງອີກແດ່ທີ່ແລ່ນ, ໃຊ້ ກະທູ້ 48 ຂອງວຽກງານ. ຕົວຈິງແລ້ວ, ການນໍາໃຊ້ປະມານ 95 ກະທູ້ອາດຈະດີກວ່າທີ່ຈະໃຊ້ປະໂຫຍດສູງສຸດຂອງເຄື່ອງຈັກຂອງທ່ານ. ເນື່ອງຈາກວ່າ: core ລໍຖ້າຂໍ້ມູນ ຫຼື I/O ບາງຄັ້ງ, ດັ່ງນັ້ນ thread 2 ສາມາດແລ່ນໄດ້ໃນຂະນະທີ່ thread 1 ບໍ່ແລ່ນ.
ແຕ່ລະກະທູ້ສາມາດປະຕິບັດໄດ້ເທົ່າໃດ?
ຫ້ອງຮຽນກະທູ້. ຄໍາຮ້ອງສະຫມັກກະທູ້ດຽວມີພຽງແຕ່ ໜຶ່ງ ກະທູ້ ແລະສາມາດຈັດການພຽງແຕ່ຫນຶ່ງວຽກງານໃນເວລານັ້ນ.