#include <stdio.h>
int main() {
while(!DONE) {
/* check for stuff */
}
return 0;
}
उपरोक्त कोड नमूना 100% सीपीयू का उपयोग करता है जब तक कि सही नहीं हो जाता है। मैं ऐसे प्रोग्राम को कैसे कार्यान्वित कर सकता हूं जो लूप करता है और केवल समाप्त होने पर ही समाप्त हो जाता है, लेकिन जो 100% सीपीयू का उपयोग नहीं करता है? आधुनिक भाषाएं ऐप.प्रोसेस मैसेज या कुछ ऐसा कुछ उपयोग करती हैं जो ओएस को इस पल के लिए नियंत्रण देती है और फिर लूप पर वापस आती है।सी मुख्य लूप 100% सीपीयू
मैं सेल्सियस पर नया हूँ, जाहिर है ... नवीनतम जीसीसी, लिनक्स और विंडोज का उपयोग कर
नींद (पूर्णांक मिलीसेकंड)
आप एक तुल्यकालन वस्तु, एक है कि आप जब तक यह संकेत हो जाता है पर इंतजार कर सकते हैं, इस तरह आप सब पर सीपीयू का उपभोग नहीं होगा का उपयोग करना चाहिए। –
'क्या किया गया' और यह शून्य होने का कारण क्या होगा? संभवतः जब तक 'सामान की जांच' तक प्रोसेसिंग जारी रखने के लिए यह समझ में आता है कि गैर-शून्य होने के लिए सेट किया गया कुछ ऐसा मूल्यांकन करता है? –
लास वी। कार्ल्सन: आपका समाधान समझ में आता है (शायद यह बहुत समझ में आता है, लेकिन मेरे पास यह ज्ञान नहीं है)। क्या आप विस्तार से बता सकते हैं? क्या मुझे धागे की जांच करनी चाहिए? (एक उदाहरण अच्छा होगा) चार्ल्स बेली: डोन होना चाहिए (डीओएन के बजाए किया गया) और यह 1 पर सेट किया जाएगा जब उपयोगकर्ता ऐप छोड़ने का विकल्प चुनता है, उदाहरण के लिए। मुझे खेद है कि अगर मैं खुद को पर्याप्त रूप से समझा नहीं सकता .. – pwseo