par multithread

T

tooti

Guest
Hi all,
Es gribētu tagad kā uzrakstīt multithread klases C .
Ja iespējams, lūdzu, iedodiet man dažus piemērus.
Thx

 
C Builder varat to darīt:# Ietvert <vcl.h>
# Pragma hdrstopTMyThread * MyThread;

__fastcall TMyThread: TMyThread (CreateSuspended bool)
: TThread (CreateSuspended)
(
/ / TpIdle vītne izpilda tikai tad, kad sistēma ir dīkstāvē.Windows nebūs
/ / Pārtraukt citi pavedieni izpildīt pavediens ar tpIdle prioritāte.
/ / TpLowest vītne prioritāte ir diviem punktiem zem normas.
/ / TpLower vītne prioritāte ir viena temperatūra ir zemāka par parasto.
/ / TpNormal vītne ir normālā prioritāte.
/ / TpHigher vītne prioritāte ir par vienu punktu virs normālā.
/ / TpHighest vītne prioritāte ir divi punkti virs normālā.
/ / TpTimeCritical vītne izpaužas augstākā prioritāte.
Prioritāte = tpHighest;
)

neesošu __fastcall TMyThread: Execute ()
(
/ / Thread kodu šeit!!
)

Par radīt citiem vienkārši dot citu nosaukumu un atkārtojiet procedūru,leomecma

 
Ja jūs vēlaties, lai "apietu" kompilatoru / IDE īpaša pārslodzes, varat izveidot savu klasi uz augšu CreateThread win32API.Bet, piesargāties vītņu bug, lietošanas mutexes un citi "drošības pasākumi".Esmu bijis nokosts ar vītņu bug pirms dažiem mēnešiem (ar MSVC 6), un tās atkļūdotājs nevar atrast kļūdu.Tikai pēc tam, skatoties Windows Task Manager es redzu, ka kaut kas nogāja greizi ar CPU izmantošanu, no turienes es zinu, ka tai jābūt vītņu kļūda.Pēc nosaka atbilstošo moduli sinhronizācijas rutīnas, viss gāja labi.Tikai uzmanīgi, lai gan

<img src="http://www.edaboard.com/images/smiles/icon_wink.gif" alt="Piemiedz ar aci" border="0" />
 
Hi,
nosūtīt MSDN rakstīšanai multithreaded pieteikumu, jūs, iespējams, ir masīva, objektu klases CWinThread ja Jūs lietojat MFC vai jums ir nepieciešams pārvaldīt pavedienu rokturi šajā masīvā, es pieņemu vēlaties rezumēju radīšanu pavedieni un pārvaldīt to.

 

Welcome to EDABoard.com

Sponsor

Back
Top