Скачать презентацию
Идет загрузка презентации. Пожалуйста, подождите
Презентация была опубликована 8 лет назад пользователемИннокентий Дулов
1 Հոսքերը Windows ՕՀ - ում
2 Ներածություն Ներածություն Հոսքի ստեղծումը Հոսքի ստեղծումը Հոսքի ավարտը Հոսքի ավարտը Հոսքի ստեկը Հոսքի ստեկը Հոսքերի առաջնայնությունը և պլանավորումը Հոսքերի առաջնայնությունը և պլանավորումը
3 Ներածություն Հոսքը աշխատում է պրոցեսի ներքո Հոսքը աշխատում է պրոցեսի ներքո Հոսքը այն փոքրագույն էլեմենտն է որին հատկացվում է պրոցեսորի ժամանակ ՕՀ - ի կողմից Հոսքը այն փոքրագույն էլեմենտն է որին հատկացվում է պրոցեսորի ժամանակ ՕՀ - ի կողմից Հոսքը կարող է իրականացնել պրոցեսի ցանկացած կոդ, ներառյալ այն կոդերը որոնք արդեն իրականացվել են այլ հոսքերի կողմից Հոսքը կարող է իրականացնել պրոցեսի ցանկացած կոդ, ներառյալ այն կոդերը որոնք արդեն իրականացվել են այլ հոսքերի կողմից
4 Ներածություն Thread pool( հոսքերի խուրց )- ը դա աշխատող հոսքերի համախումբ է որը իրականացնում է ասինխրոն callback- ների իրականացում Thread pool( հոսքերի խուրց )- ը դա աշխատող հոսքերի համախումբ է որը իրականացնում է ասինխրոն callback- ների իրականացում
5 Հոսքի ստեղծումը CreateThread ֆունկցիան ստեղծում է նոր հոսք տվյալ պրոցեսի համար : CreateThread ֆունկցիան ստեղծում է նոր հոսք տվյալ պրոցեսի համար : Ծնող հոսքը զավակ հոսք ստեղծելիս պարտավոր է նշել այն հասցեն որտեղից սկսած պետք է զավակ հոսքը իրականացնի կոդի կատարումը : Սովորաբար այդ հասցեն CreateThread ֆունկցիային փոխանցված ֆունկցիայի հասցեն է : Ծնող հոսքը զավակ հոսք ստեղծելիս պարտավոր է նշել այն հասցեն որտեղից սկսած պետք է զավակ հոսքը իրականացնի կոդի կատարումը : Սովորաբար այդ հասցեն CreateThread ֆունկցիային փոխանցված ֆունկցիայի հասցեն է :
6 Հոսքի ստեղծումը Փոխանցվող ֆունկցիան ընդունում է մեկ void* տիպի պարամետր և վերադարձնում է DWORD տիպի պարամետր : Փոխանցվող ֆունկցիան ընդունում է մեկ void* տիպի պարամետր և վերադարձնում է DWORD տիպի պարամետր :
7 Հոսքի ստեղծումը HANDLE WINAPI CreateThread( _In_opt_ LPSECURITY_ATTRIBUTES lpThreadAttributes, _In_ SIZE_T dwStackSize, _In_ LPTHREAD_START_ROUTINE lpStartAddress, _In_opt_ LPVOID lpParameter, _In_ DWORD dwCreationFlags, _Out_opt_ LPDWORD lpThreadId);
8 Հոսքի ստեղծումը #include #include DWORD WINAPI MyThreadFunction( LPVOID lpParam ); typedef struct MyData { int val1; int val2; } MYDATA, *PMYDATA; int main() { PMYDATA pDataArray[MAX_THREADS]; DWORD dwThreadIdArray[MAX_THREADS]; HANDLE hThreadArray[MAX_THREADS];
9
Հոսքի ստեղծումը for( int i=0; i
10
Հոսքի ստեղծումը WaitForMultipleObjects(MAX_THREADS, hThreadArray, TRUE, INFINITE); for(int i=0; i
11 Հոսքի ավարտր Հոսքը կանչում է ExitThread ֆունկցիան Հոսքը կանչում է ExitThread ֆունկցիանExitThread Պրոցեսի կամայական հոսքը կանչում է ExitProcess ֆունկցիան Պրոցեսի կամայական հոսքը կանչում է ExitProcess ֆունկցիան ExitProcess Հոսքի ֆունկցիան ավարտում է իր աշխատանքը Հոսքի ֆունկցիան ավարտում է իր աշխատանքը Ցանկացած հոսք կանչում է TerminateThread ֆունկցիան տալով հոսքի հենդլերը Ցանկացած հոսք կանչում է TerminateThread ֆունկցիան տալով հոսքի հենդլերըTerminateThread Ցանկացած հոսք կանչում է TerminateProcess ֆունկցիան պրոցեսի հենդլերով Ցանկացած հոսք կանչում է TerminateProcess ֆունկցիան պրոցեսի հենդլերովTerminateProcess
12 Հոսքի ստեկը Ըստ լռելիության ստեկի չափը մեկ մեգաբայթ է Ըստ լռելիության ստեկի չափը մեկ մեգաբայթ է Ըստ լռելիության չափը տրվում է իրականացվող ֆայլի մեջ սկզբում (header) Ըստ լռելիության չափը տրվում է իրականացվող ֆայլի մեջ սկզբում (header) Ստեկը ազատվում է, երբ հոսքը վերջացնում է իր աշխատանքը Ստեկը ազատվում է, երբ հոսքը վերջացնում է իր աշխատանքը
13 Հոսքերի առաջնայնությունը և պլանավորումը Գոյություն ունեն հետևյալ առաջնայնությունները IDLE_PRIORITY_CLASS IDLE_PRIORITY_CLASS BELOW_NORMAL_PRIORITY_CLASS BELOW_NORMAL_PRIORITY_CLASS NORMAL_PRIORITY_CLASS NORMAL_PRIORITY_CLASS ABOVE_NORMAL_PRIORITY_CLASS ABOVE_NORMAL_PRIORITY_CLASS HIGH_PRIORITY_CLASS HIGH_PRIORITY_CLASS REALTIME_PRIORITY_CLASS REALTIME_PRIORITY_CLASS
14 Հոսքերի առաջնայնությունը և պլանավորումը Գոյություն ունեն պլանավորման հետևյալ ալգորիթմները First in first out First in first out Shortest remaining time Shortest remaining time Fixed priority pre-emptive scheduling Fixed priority pre-emptive scheduling Round-robin scheduling Round-robin scheduling Multilevel queue scheduling Multilevel queue scheduling
15 Հոսքերի առաջնայնությունը և պլանավորումը
Еще похожие презентации в нашем архиве:
© 2024 MyShared Inc.
All rights reserved.