8.5 - מכונת קלט ופלט עם זמן וביטול - תרגול
תרגול זמן והתקדמות¶
תרגיל ראשון¶
שנו את השעון בדוגמה לשעון מחזורי בן עשר אלפיות השנייה. דחו בכוונה את הקריאה הראשונה בחמישים אלפיות השנייה ובדקו את מספר התפוגות שנקרא. הסבירו מדוע אין לדרוש דווקא את המספר חמש בכל הרצה.
תרגיל שני¶
צרו תוכנית שמחכה לאות SIGUSR1 באמצעות signalfd. חסמו את האות לפני יצירת תהליכונים, שלחו אותו לעצמכם וקראו רשומה אחת. בדקו את מספר האות ברשומה. הגדירו כיצד צריך להרחיב את התוכנית אם היא ספרייה שאינה בעלת המדיניות על כל אותות התהליך.
תרגיל שלישי¶
ממשו מכונת כתיבה שמקבלת רצף תוצאות מדומה: שלושה בתים, WouldBlock, שני בתים, ועוד שלושה בתים. ודאו ששמונה בתים נשלחים בדיוק פעם אחת. הגדירו מה יוחזר אם ביטול מגיע אחרי ההתקדמות הראשונה, ואל תציגו את המצב כאילו דבר לא נשלח.