Avatar billede trayzor Nybegynder
07. juni 2005 - 18:07 Der er 6 kommentarer og
1 løsning

Kommunikation med threads

Kan nogen herinde give mig deres mening om hvordan man bedst/nemmest kommunikerer med tråde i en multitrådet applikation.

Jeg har en klasse hvori der laves x antal tråde, og jeg vil gerne f.eks. fortælle tråd y hvilken startconfig den skal starte med. Ligeledes skal jeg også finde en måde at tråd y kan sende info tilbage til min hovedklasse.

Alle hint, tips og tricks modtages :)
Avatar billede arne_v Ekspert
07. juni 2005 - 18:21 #1
du sender vel diverse argumenter med over i constructor på det objekt som
du starter tråden på ?
Avatar billede arne_v Ekspert
07. juni 2005 - 18:23 #2
eksempel:

public class T
{
    private int v;
    public T(int v)
    {
        this.v = v;
    }
    public void Run()
    {
        // kode som bruger v
    }
}

og

        T[] t = new T[4];
        for(int i = 0; i < t.Length; i++)
        {
            t[i] = new T(100 + i);
           
        }
        for(int i = 0; i < t.Length; i++)
        {
            (new Thread(new ThreadStart(t[i].Run))).Start();
        }
Avatar billede trayzor Nybegynder
07. juni 2005 - 18:30 #3
starter tråden sådan her:

Thread thread = new Thread(new ThreadStart(ThreadWorker.Run));

Så vidt jeg ved kan man da ikke sende argumenter med til Run metoden ovenfor?
Avatar billede trayzor Nybegynder
07. juni 2005 - 18:33 #4
aah ja ok jeg er med... havde ikke set den fra den vinkel. Tak :)

Smid et svar for pts
Avatar billede arne_v Ekspert
07. juni 2005 - 18:40 #5
kommer her
Avatar billede trayzor Nybegynder
07. juni 2005 - 18:40 #6
Hvordan ville du sende informationer tilbage til hovedtråden hvis f.eks. tråd x er kommet frem til et resultat der skal bruges næste gang hovedtråden skal spawne nye tråde?
Avatar billede arne_v Ekspert
08. juni 2005 - 21:49 #7
du sender en reference til et object med over i constructor, Run tilføjer noget
til det objekt når det er færdigt, main thread kan hente det ud af objektet fordi
den også har en reference til det objekt
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester