פורסם 2007 במרץ 818 שנים דבר ראשון כנראה יש לך מרובה ליבות, והם לוקחות 100% מאחת הליבות. הסיבה היא כנראה שהתוכניות שאתה כותב משתמשות בלולאות שמבצעות קוד כל הזמן. בגלל שהתוכנית שלך מבצעת קוד כל הזמן, היא לא נחה אף פעם ומשתמשת במעבד כל הזמן.בהנחה שהתוכנית שלך לא עושה איזה חישוב אינטנסיבי (לרוב הסיבה ללקחית 100 אחוז מהמעבד), אתה צריך להורות לה להפסיק לפעול אם אין לה סיבה. הדרך הפשוטה היא למשל ע"י הוספת פקודת שינה (sleep/delay) לפרק זמן קצר מאוד (אפילו כמה מילי שניות יכול להספיק).למשל התוכנית הזו תיקח הרבה משאבי מעבד:int main(void) {while (1==1) {}}והתוכנית הזו לא תיקח (יחסית) כלום:int main(void) {while (1==1) {sleep(1);}}
פורסם 2007 במרץ 818 שנים מחבר יש לי P4 עם HT נראה לי אותו דבר. אוקי הוספתי פקודת שינה ל 1 מילי שניות ועכשיו זה לוקח 01 CPU תודה רבה
ארכיון
דיון זה הועבר לארכיון ולא ניתן להוסיף בו תגובות חדשות.