Fungsi Tidur dalam C
Dalam C , pembangun sering menghadapi keperluan untuk menjeda pelaksanaan program untuk tempoh tertentu, serupa dengan Sleep( ) berfungsi dalam bahasa pengaturcaraan lain. Artikel ini bertujuan untuk menangani keperluan tersebut dan menyediakan penyelesaian yang komprehensif.
std::this_thread::sleep_for
C 11 memperkenalkan
<code class="cpp">#include <chrono> #include <thread> std::chrono::milliseconds timespan(111605); // or whatever std::this_thread::sleep_for(timespan);</code>
std::this_thread::sleep_until
Alternatif kepada std::this_thread::sleep_for ialah std::this_thread::sleep_until, yang membenarkan jeda sehingga titik masa tertentu dicapai.
Penyelesaian Pra-C 11
Sebelum C 11, C tidak mempunyai keupayaan benang dan kefungsian tidur. Oleh itu, penyelesaian yang bergantung kepada platform adalah perlu. Berikut ialah contoh yang berfungsi untuk Windows dan Unix:
<code class="cpp">#ifdef _WIN32 #include <windows.h> void sleep(unsigned milliseconds) { Sleep(milliseconds); } #else #include <unistd.h> void sleep(unsigned milliseconds) { usleep(milliseconds * 1000); // takes microseconds } #endif</code>
Sebagai alternatif, boost::this_thread::sleep boleh digunakan sebagai pendekatan pra-C 11 yang lebih ringkas.
Atas ialah kandungan terperinci Bagaimana untuk Melaksanakan Fungsi Tidur dalam C?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!