létrehozása patakok

A következő példa bemutatja, hogyan lehet létrehozni egy új téma, amely végrehajtja helyileg meghatározott ThreadFunc funkciót.

DWORDWINAPIThreadFunc (LPVOID lpParam)







wsprintf (szMsg, "paraméter =.", * (DWORD *) lpParam);

MessageBox (NULL, szMsg, "ThreadFunc", MB_OK);

DWORD dwThreadId, dwThrdParam = 1;

NULL, // alapértelmezett biztonsági attribútumok

0, // halom nagysága az alapértelmezett

ThreadFunc. // menet funkció

dwThrdParam, // argumentuma menet funkció

0, // létrehozása zászlók által használt alapértelmezett

dwThreadId); // visszaadja a szál azonosítóját

// Ha sikeres, ellenőrizze a visszatérési érték.

Az egyszerűség kedvéért, ez a példa halad egy mutatót mind az értékét az áramlási paraméter funkciót. Ez lehet egy mutatót tartalmaz, amely adattípus vagy szerkezet, vagy elhagyhatjuk, továbbításával NULL mutató, és az eltávolítását a hivatkozást a paraméter ThreadFunc.

Azokban az eljárásokban, ahol az áramlás okozhat több szálat, hogy végre egy kis kódot, ez kényelmetlen használni globális változókat. Például egy folyamat, amely lehetővé teszi a felhasználó számára, hogy nyissa több fájlt egy időben, létrehozhat egy új szálat minden fájlt annak érdekében, hogy az egyes áramok áramlási végezni néhány funkciót. Generálása áramlási küldheti egyedi információkat (például a fájl neve) szükséges minden egyes esetben az áramlás függvényében paramétert. Nem lehet használni egy globális változó erre a célra, de használható dinamikusan kiosztani egy string tároló.







Létrehoz egy patak használhatja paraméterek CreateThread funkciót. hogy meghatározza a következőket:

  • biztonsági leíró attribútumok az új téma. Ezek a biztonsági jellemzők az öröklési zászló, amely meghatározza, hogy a leíró hogy öröklik a gyerek. biztonsági attribútumok is egy biztonsági leíró, amely a rendszer lehet hozzáférni, amely szabályozza az összes későbbi felhasználásra leíró flow kezelés előtt adott neki.
  • A kezdeti mérete az új szál köteg. Egy halom áramlási automatikusan hozzárendelt a memória a folyamat; a rendszer növeli a verem szükség, és kibocsátja, amikor az áramlás megáll. További információért lásd. Cikk menet verem mérete.
  • Jelölőnégyzetet teremtés. amely lehetővé teszi, hogy hozzon létre egy szál a várakozás állapotban. Amikor szünet volt, a patak nem fut, amíg a funkciót nevezik ResumeThread.



Kapcsolódó cikkek