cpipe - ອອນລາຍໃນຄລາວ

ນີ້ແມ່ນຄໍາສັ່ງ cpipe ທີ່ສາມາດດໍາເນີນການໄດ້ໃນ OnWorks ຜູ້ໃຫ້ບໍລິການໂຮດຕິ້ງຟຣີໂດຍໃຊ້ຫນຶ່ງໃນສະຖານີເຮັດວຽກອອນໄລນ໌ຟຣີຫຼາຍອັນຂອງພວກເຮົາເຊັ່ນ Ubuntu Online, Fedora Online, Windows online emulator ຫຼື MAC OS online emulator

ໂຄງການ:

NAME


cpipe - ຄັດລອກ stdin ໄປ stdout ໃນຂະນະທີ່ນັບ bytes ແລະການລາຍງານຄວາມຄືບຫນ້າ

ສະຫຼຸບສັງລວມ


cpipe [-b bsize] [-vt] [-vr] [-vw] [-ngr] [-s ຄວາມໄວ]

OPTIONS


-b ຂະ​ຫນາດ buffer ໃນ kB​,
1 ຄ່າ int ລະຫວ່າງ 1 ແລະ oo.
ຄ່າເລີ່ມຕົ້ນ: `128'

-vt ສະແດງຜ່ານ.

-vr ສະແດງເວລາອ່ານ.

-vw ສະແດງເວລາຂຽນ.

-ngr ບໍ່ greedy ອ່ານ. ຢ່າບັງຄັບໃຊ້ buffer ເຕັມທີ່ກ່ຽວກັບການອ່ານກ່ອນທີ່ຈະເລີ່ມຂຽນ.

-s ການ​ຈໍາ​ກັດ​ຄວາມ​ໄວ​ການ​ຜະ​ລິດ​ໃນ kB/s​,
1 ຄ່າສອງເທົ່າລະຫວ່າງ 1 ແລະ oo.

ລາຍລະອຽດ


Cpipe ສຳເນົາວັດສະດຸປ້ອນມາດຕະຖານຂອງມັນໃຫ້ກັບຜົນຜະລິດມາດຕະຖານຂອງມັນ ໃນຂະນະທີ່ວັດແທກເວລາທີ່ມັນໃຊ້
ເພື່ອອ່ານ input buffer ແລະຂຽນ output buffer. ຖ້າຫນຶ່ງຫຼືຫຼາຍກວ່ານັ້ນ -vx ທາງເລືອກແມ່ນ
ໃຫ້, ສະຖິຕິຂອງ throughput ສະເລ່ຍແລະຈໍານວນທັງຫມົດຂອງ bytes ຄັດລອກໄດ້ຖືກພິມອອກ
ກັບຜົນໄດ້ຮັບຄວາມຜິດພາດມາດຕະຖານ.

ບໍ່ ຄວາມໂລບມາກ ອ່ານ
ໂດຍປົກກະຕິ, cpipe ເຮັດດີທີ່ສຸດເພື່ອຕື່ມຂໍ້ມູນໃສ່ buffer ຂອງມັນທັງຫມົດ (ທາງເລືອກ -b) ກ່ອນ​ທີ່​ຈະ​ເລີ່ມ​ຕົ້ນ​
ການ​ຂຽນ. ຢ່າງໃດກໍຕາມ, ໃນບາງສະຖານະການ, ຕົວຢ່າງ: ຖ້າທ່ານສົນທະນາກັບໂຄງການໂຕ້ຕອບຜ່ານ cpipe,
ນີ້ຂັດຂວາງການສື່ສານ: ໂຄງການກ່າວວ່າລໍຖ້າການປ້ອນຂໍ້ມູນທີ່ມັນບໍ່ເຄີຍເຫັນ,
ເນື່ອງຈາກວ່າການປ້ອນຂໍ້ມູນຕິດຢູ່ໃນ buffer ຂອງ cpipe. ແຕ່ cpipe ຕົວຂອງມັນເອງຈະບໍ່ເຫັນການປ້ອນຂໍ້ມູນເພີ່ມເຕີມ
ກ່ອນທີ່ໂຄງການຈະບໍ່ຕອບສະຫນອງ.

ເພື່ອເຂົ້າຫາມັນ, ລອງໃຊ້ - ນ. ເມື່ອອອກການໂທອ່ານ, cpipe ແມ່ນພໍໃຈຫຼັງຈາກນັ້ນ
ທັນທີທີ່ມັນໄດ້ຮັບຢ່າງຫນ້ອຍຫນຶ່ງ byte. ແທນທີ່ຈະຕື່ມ buffer, ມັນຢຸດເຊົາການອ່ານແລະ
ຂຽນອັນໃດກໍໄດ້ທີ່ມັນໄດ້ຮັບກັບຜົນຜະລິດ. ໃຫ້ສັງເກດວ່າ, ຢ່າງໃດກໍຕາມ, ວ່າການວັດແທກ throughput ຈະ
ໜ້ອຍລົງ ຖ້າຈຳນວນຂອງໄບຕ໌ທີ່ໂອນໃນຄູ່ອ່ານ/ຂຽນ ກາຍເປັນນ້ອຍ,
ເນື່ອງຈາກວ່າ cpipe ຈະໃຊ້ເວລາເຮັດວຽກຂ້ອນຂ້າງຫຼາຍໃນທຸກໆ byte.

ຈຳ ກັດ ຜ່ານໂດຍຜ່ານ
ຖ້າກໍານົດຂອບເຂດຈໍາກັດຜ່ານທາງເລືອກ -s, cpipe ໂທ ນອນຫລັບ(3) ໃນລະຫວ່າງ
ການຄັດລອກ buffers, ດັ່ງນັ້ນການຂະຫຍາຍໄລຍະເວລາຂອງວົງຈອນການອ່ານ / ຂຽນ. ນັບຕັ້ງແຕ່
ໃນລະບົບສ່ວນໃຫຍ່ມີເວລາຕໍ່າສຸດທີ່ແນ່ນອນເວລານອນ () ນອນ, ເຊັ່ນ: 0.01s, ມັນແມ່ນ.
ເປັນໄປບໍ່ໄດ້ທີ່ຈະສາມາດບັນລຸຂອບເຂດຈໍາກັດສູງທີ່ມີຂະຫນາດ buffer ຂະຫນາດນ້ອຍ. ໃນກໍລະນີດັ່ງກ່າວນີ້, ເພີ່ມຂຶ້ນ
ຂະ​ຫນາດ buffer (ທາງ​ເລືອກ​ -b) ອາດ​ຈະ​ຊ່ວຍ​ໄດ້​. ຢ່າງໃດກໍ່ຕາມ, ຈົ່ງຈື່ໄວ້ວ່ານີ້ຈໍາກັດການສົ່ງຜ່ານ
ພຽງແຕ່ໂດຍສະເລ່ຍ. ທຸກໆ buffer ດຽວຈະຖືກຄັດລອກໄວເທົ່າທີ່ຈະໄວໄດ້.

EXAMPLE


ຄໍາສັ່ງ
tar cCf / - usr | cpipe -vr -vw -vt > /dev/null
ຜົນໄດ້ຮັບໃນຜົນໄດ້ຮັບຄ້າຍຄື
...
ໃນ: 19.541ms ທີ່ 6.4MB/s (4.7MB/s avg) 2.0MB
ອອກ: 0.004ms ທີ່ 30.5GB/s (27.1GB/s avg) 2.0MB
ຜ່ານ: 19.865ms ທີ່ 6.3MB/s (4.6MB/s avg) 2.0MB
...
ໄດ້ ຄັ້ງທໍາອິດ ຖັນ ສະ​ແດງ​ໃຫ້​ເຫັນ​ເວ​ລາ​ທີ່​ມັນ​ໃຊ້​ເວ​ລາ​ເພື່ອ​ຈັດ​ການ​ຫນຶ່ງ buffer ຂອງ​ຂໍ້​ມູນ (128kB ໂດຍ​ຄ່າ​ເລີ່ມ​ຕົ້ນ​)​.
ການອ່ານການໂທໄດ້ໃຊ້ເວລາ 19.541ms, ການຂຽນການໂທໄປຫາ /dev/null ໃຊ້ເວລາພຽງແຕ່ 0.004ms ແລະຈາກ
ເລີ່ມການອ່ານຈົນຈົບການຂຽນ, ມັນໃຊ້ເວລາ 19.865ms.

ໄດ້ ຄັ້ງທີສອງ ຖັນ ສະ​ແດງ​ໃຫ້​ເຫັນ​ຜົນ​ໄດ້​ຮັບ​ຂອງ​ການ​ແບ່ງ​ປັນ​ຂະ​ຫນາດ buffer (128kB ໂດຍ​ເລີ່ມ​ຕົ້ນ​) ໂດຍ​
ເທື່ອໃນຖັນທຳອິດ.

ໄດ້ ທີສາມ ຖັນ ມີຄ່າສະເລ່ຍຫຼາຍກວ່າຄ່າທີ່ວັດແທກໄດ້ຈາກການເລີ່ມຕົ້ນຂອງ
ໂຄງການ.

ສຸດທ້າຍ, ໄດ້ ສຸດທ້າຍ ຖັນ ສະແດງໃຫ້ເຫັນຈໍານວນທັງຫມົດຂອງ bytes ທີ່ຖືກໂອນ, ເຊິ່ງແນ່ນອນ
ດຽວກັນສໍາລັບການອ່ານແລະການຂຽນ.

ໃຊ້ cpipe ອອນໄລນ໌ໂດຍໃຊ້ບໍລິການ onworks.net



ລ່າສຸດ Linux ແລະ Windows ໂຄງການອອນໄລນ໌