Kami menggunakan api int getrusage(int who, struct rusage *usage); di Linux untuk menghitung waktu dalam kode kami.

Kami menggunakan RUSAGE_THREAD konstan sebagai argumen dalam api ini untuk utas panggilan. Seperti yang didokumentasikan pada halaman manual RUSAGE_THREAD diperkenalkan sejak Linux 2.6.26.

Kami juga mengkompilasi kode kami menggunakan cywin64 gcc4.8.2 di lingkungan cygwin. Saya telah memeriksa header /usr/include/sys/resource.h di C:/cygwin64/ dan saya tidak bisa sepertinya menemukan RUSAGE_THREAD yang didefinisikan di sana, hanya RUSAGE_SELF dan RUSAGE_CHILDREN yang ditentukan. Saya menggunakan cygwin64 (CYGWIN_NT-6.2 1.7.29(0.272/5/3) 2014-04-07 13:46 x86_64 Cygwin). Saya juga mencoba melihat ke versi cygwin terbaru dan sepertinya tidak dapat menemukannya di sana juga. Jadi pertanyaan saya adalah, apakah cygwin mendukung RUSAGE_THREAD ? Jika tidak, apakah ada rencana untuk menambahkan dukungan ini?

Terima kasih sebelumnya.

0
asad_nitp 27 Mei 2021, 07:25

1 menjawab

Jawaban Terbaik

Tidak, terutama karena ini bukan bagian dari standar POSIX

https://pubs.opengroup.org/onlinepubs/9699999799/basedefs/sys_resource.h.html

Header akan mendefinisikan konstanta simbolis berikut sebagai nilai yang mungkin dari parameter who dari getrusage():

RUSAGE_SELF
Mengembalikan informasi tentang proses saat ini.
RUSAGE_CHILDREN
Mengembalikan informasi tentang anak-anak dari proses saat ini.

Secara umum untuk menambahkan fungsionalitas apa pun ke Cygwin, dua prinsip dasar berlaku:

https://cygwin.com/acronyms/#SHTDI
https://cygwin.com/acronyms/#PTC

Milis cygwin dan cygwin-developers adalah tempat yang baik untuk menanyakan apakah Anda berencana untuk berkontribusi
https://cygwin.com/lists.html

1
matzeri 27 Mei 2021, 05:18