תרגול ביטול מול callback¶
הריצו את הניסוי עם event מסומן לפני הרישום, עם סימון אחריו ועם Dispose לפני סימון. בדקו שה־Task מגיע לתוצאה או לביטול ושלא ניגשים ל־context לאחר Free. הגדירו שפעולות Dispose של הבדיקה אינן מתחרות זו בזו.
הוסיפו barrier מבוקר בתוך callback בגרסת מעבדה בלבד. בקשו Dispose מ־thread אחר והראו שהוא אינו חוזר עד שה־callback יוצא מן ה־barrier. שחררו את ה־barrier מתוך גורם נפרד כדי לא ליצור deadlock של הבדיקה עצמה.
תכננו wrapper לספרייה עם start, cancel ו־join. כתבו טבלת מצבים עבור completion שמתרחש לפני cancel, אחרי cancel ובמקביל אליו. ציינו באיזה מצב מותר לשחרר delegate, context, buffer ו־native operation handle.