Sleep() әдісі - Sleep() статикалық әдісі қай ағын құрамынан шақырылса, сол ағынның жұмысын миллисекундпен көрсетілген уақыт мөлшеріне тоқтатады. Бір ағын жұмысы тоқтатылған кезде басқа ағын жұмысын жалғастыра алады.
- public static void Sleep(int миллисекундпен_бөгелу)
- Егер бөгелу уақыты 0 миллисекунд болса, онда шақырушы ағын өз кезегін күтіп тұрған басқа ағынның жұмыс атқаруына мүмкіндік беру үшін ғана бөгеледі.
- Көпағындық программалауда программаның жұмысын негізгі ағын аяқтау ережесі қабылданған. Бұл ережені ұстану міндетті болмағанымен, осы арқылы программаның ақырғы нүктесін айқын белгілеуге болады.
Көпағындық программаны жетілдіру (мысал 2) - Ағын құрылғаннан кейін бірден атқарылуын бастау: жұмыс істеп отырған класс конструкторында Thread типті объект экземплярын алу;
- Ағын атын бейнелеу үшін Thread класының Name қасиетін пайдалану:
- public string Name { get; set; }
- Бірнеше ағынды құру мысалын қарастыру: мысал 3
Ағынның аяқталуы (мысал 4) - Ағынның аяқталуын бақылау үшін келесі қасиетті пайдалануға болады:
- public bool IsAlive { get; } // true – ағын әлі де орындалуда.
Ағынның аяқталуы (мысал 5) - Ағынның аяқталуын бақылаудың тағы бір жолы – Join() әдісін пайдалану.
- public void Join()
- Шақырушы ағын шақырылған әдіске қосылғанша күтеді. Егер ағын басталмаған болса, онда ThreadStateException аластамасы генерацияланады. Join() құрамында ағынның аяқталуын күтудің максимал уақытын көрсетуге болады.
Назарларыңызға рахмет!
Достарыңызбен бөлісу: |