Читать онлайн «Разработка многопоточных приложений: Методические указания к курсу ''Системное и прикладное программное обеспечение''»

Автор Рудалев В.Г.

М И Н И СТ Е РСТ В О О БРА ЗО В А Н И Я РО ССИ Й СК О Й Ф Е Д Е РА Ц И И В О РО Н Е Ж СК И Й ГО СУ Д А РСТ В Е Н Н Ы Й У Н И В Е РСИ Т Е Т Ф акультетп рикладной математикиимеханики К а ф едр а т ехн и ческой ки бер н ет и ки и а вт ом а т и ческого р егу ли р ова н и я Р азраб о тка м н о г о п о то чн ы х п рило ж ен ий М етодичес киеуказания к курсу « Системноеип рикладноеп рог раммное об есп ечение» для студентов 3 курсад/о ф акультетаП М М Составители: Рудалев В . Г. , К ры ж ановская Ю . А . В оронеж , 2001 1 В методических указаниях оп ис ы ваю тся основы создания мног оп оточны х п рилож ений для оп ерационны х систем Windows 95/98/NT/2000. И злож енамето- дикаис п ользования стандартны х средств интерф ейс ап рикладног о п рог раммиро- вания API Win32 исп ециализированны х классов среды п рог раммирования Delphi. М етодические указания рас считаны настудентов 3 курсад. о. ф -таП М М , имею щ их начальное п редставление об архитектуре Win32 инавы кип рог рамми- рования в средеDelphi 4. 0 – 5. 0. Рецензент: доценткаф едры М О Э В М Ю . Т . Свиридов С оде р ж ан и е 1. О сновны еп онятия… … … … … … … … … … … … … … … … … … 2 2. Созданиеп отоков средствамиAPI… … … … … … … … … … … . . 4 3.
К лассTThread… … … … … … … … … … … … … … … … … … … … 7 4. Синхронизация п отоков… … … … … … … … … … … … … … . . … 12 5. Задания для самос тоятельной раб оты … … … … … … … … … ... 18 Литература… … … … … … … … … … … … … … … … … … … … … … 19 1. О сн овн ы епон яти я П от ок (Thread, н и т ь выполн ен и я) – исп олняемая сущ ность пр оцесса . П р о- цесс вклю чаетв себ я загруж енную в оп еративную п амять исп олняемую п рог рам- му, виртуальное адресное п ространство, системны е ип ользовательские ресурсы , вы деленны е п рог рамме, и один илинесколько пот оков (н и т ей) вы п олнения. В каж дом п роцессевсег данеявно (незаметно для п рог раммистаинезависимо отег о воли) п рис утствуетодин осн овн ой пот ок пр и лож ен и я, остальны е п отокип рине- об ходимостип рог раммистп иш етсам. П отокивы п олняю тся п араллельно в вирту- альном адресном п рос транстве п ородивш ег о их п роцессаи разделяю т ресурсы этог о п роцесса. Е диницей мног озадачностив Windows является п оток, ане п ро- цесс. П оток мож но рассматривать как автономно раб отаю щ ую и уп равляемую часть п рилож ения, амног оп оточнос ть п рилож ения – как мног озадачность внутри п рог раммы . Средип ричин, п об уж даю щ их создавать именно мног оп оточны еп ри- лож ения, п реж девсег о следуетвы делить следую щ ие. П овы ш е н и ен аде ж н ости пр огр ам м ы . Зацикливание основног о п отока п рилож ения п олностью б локирует ег о раб оту, п риэтом п рилож ение мож ет б ы ть заверш ено лиш ь п рип омощ идисп етчеразадач (Task Manager), что, как п равило, соп ровож дается п отерей нес охраненны х данны х.