Gå til innhold

Multithreading eller bare threading


Anbefalte innlegg

Argh! Jeg er en console programmerer, og jeg lar gjerne litt tekst rulle over skjermen ved hjelp av flere Sleep() kommandoer i mine spill. Men vennene mine klager over at d burde gå ann og bare trykke en tast for å skippe dette... Men alle vet jo at i C++ så skjer ting etterverandre. Men det finnes jo alltids metoder, og den metoden jeg kom frem til var Multithreading...

 

Slik jeg har forstått det så er dette en metode som skaper en "service" som ligger å tar imot kommandoer. Den bryter inn i hovedprogrammet når noe som den er programmert til å gjøre skjer. Vel, jeg har PRØVD å lese meg frem til svar. MEN jeg finner INGEN gode tutorials eller forklainger. Jeg finner nærmest INGENTING om dette emnet, og det frustrerer meg. Derfor lurte jeg på om noen her enkelt og greit kan forklare meg det ( neppe ) eller gjerne gi meg en link til en god oppskrift/guide/tutorial whatever. For dette vil jeg lære! BAH!

 

Mantion

 

PS: Takk på forskudd for all hjelp :):thumbup::thumbup::thumbup:

Lenke til kommentar
Videoannonse
Annonse

The page cannot be displayed

 

Men anyways, fant ut av threadingen. Men nå lurer jeg på en ny ting. Hvordan finner jeg exit koden til en thread som brukes i ExitThread... GetExitCodeThread() Er hvist det jeg skal bruke, men hvordan fungerer den? :S

 

Mantion

Lenke til kommentar

får bare detta jeg

/home/fredrik/dev/test/src/test.cpp:39: undefined reference to `pthread_create'

test.o(.text+0x68):/home/fredrik/dev/test/src/test.cpp:40: undefined reference to `pthread_create'

test.o(.text+0x75):/home/fredrik/dev/test/src/test.cpp:41: undefined reference to `pthread_join'

test.o(.text+0x81):/home/fredrik/dev/test/src/test.cpp:42: undefined reference to `pthread_join'

 

når jeg kompilerer det første eksempelet med pthread.h (g++)

Lenke til kommentar
får bare detta jeg
/home/fredrik/dev/test/src/test.cpp:39: undefined reference to `pthread_create'

test.o(.text+0x68):/home/fredrik/dev/test/src/test.cpp:40: undefined reference to `pthread_create'

test.o(.text+0x75):/home/fredrik/dev/test/src/test.cpp:41: undefined reference to `pthread_join'

test.o(.text+0x81):/home/fredrik/dev/test/src/test.cpp:42: undefined reference to `pthread_join'

 

når jeg kompilerer det første eksempelet med pthread.h (g++)

-lpthread

Lenke til kommentar
Hvor utfører jeg ExitThread koden, og hvordan klare jeg å lage DWORD exitCode; global slik at jeg kan lukke den threaden i en annen funksjon ved en hvis input gjennom ExitThread(exitCode);

Er ikke helt sikker på om jeg klarer å følge spørsmålet ditt, men skal prøve å svare. ExitThread bruker du åpenbart når du vil avslutte den aktuelle tråden, avslutningskoden (exitCode) kan hentes ut av den tråden (hovedtråden) som kaller GetExitCodeThread().

Lenke til kommentar

Jeg skjønner heller ikke hva Mention spør om. Ikke vet jeg hva slags plattform han programmerer på en gang.

 

 

Edit: Om det er spørsmål om å få tak i den returnerte verdien fra en funksjon startet av en annen tråd, så kan den plukkes opp av en join kommando i hovedprogrammet. pthread_join for posix.

Endret av JBlack
Lenke til kommentar

Hehe, jeg har fått fikset det nå. ExitThread brukes hvisnok bare for å lukke den threaden den er I, og ikke for å lukke andre threader. Men det fine er jo bare å lage en global variable, en if som sjekker om den er satt, hvis ja, return 0...

 

Så det problemet er fikset, men hvet noen her hvordan jeg kan fulle inn en form ( get form ) gjennom C++? Har connected meg til min webserver på port 80, klar til å sende kommandoen. Eneste problemet er at jeg ikke vet hva kommando det er :(

 

Mantion

Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...