Gå til innhold

Threading generelt, og i python


Anbefalte innlegg

Jeg har laget meg et lite chatte program i python, programmet er ikke noe stor-artet, men det er det første jeg har laget i python.

 

Litt om min Programmerings erfaring:

Når jeg var mindre programerte jeg en del i Qbasic, og i senere tid har jeg prøvt å lære meg mer avanserte språk...men først nå når jeg har prøvt meg på python så har jeg fått det til..

 

Problemet:

 

Chatte-programmet jeg har laget har en mottaker og en sender, fordi jeg ikke klarer å lage det slik at den sjekker om du har fått ny melding og skriver den på skjermen...mens du skriver meldinger.

 

Har spurt meg litt rundt om og har fått vite at jeg trenger å bruke tråder...eller threads...jeg vet at de sorterer arbeidet, og gjør ikke ting samtidigt...selv om det kan virke sånn...men har ikke helt skjønt hvordan de gjør dette

 

Noen som kan lett forklare hvordan thread virker..og hvordan de virker i python (evt har et eksempel)??

 

 

(viss noen skjønner hva jeg mener..)

Lenke til kommentar
Videoannonse
Annonse

Denne siden gir en oversikt over multitråd-fasilitetene i Python, du bør starte med dokumentasjonen for threading.Thread. For å si det enkelt konkurrerer tråder om prosessortid, Python bytter mellom trådene såpass ofte at det ikke bør være merkbart for brukeren (virker som ting utføres samtidig).

 

Edit: Når jeg tenker meg om er kanskje ikke tråder det du er ute etter, i nettverkprogrammering bruker man gjerne asynkrone sockets. Dette er ikke ulikt tråder, men her tar du automatisk imot innkommende data istedenfor å sitte og vente i en annen tråd. Python har t.o.m en modul kalt asynchat, som ser ut til å være det du er ute etter? Nå er det en stund siden jeg har skrevet noe a la chatteprogram, men jeg er vel ikke helt på jordet :_) Hvis asynchat ikke er akkurat det du har behov for, er det kanskje bedre å gå rett på asyncore som asynchat bygger på.

Endret av A_N_K
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...