THREAD erstellen für C++.net



  • Hallo,

    ich habe schwierigkeiten einen Thread zu erstellen in C++.net. Kann mir jemand mal den Header und die cpp für einen endlos thread zeigen? Also einen Thread den ich über button click starte und der wie eine endlosschleife arbeitet.

    Danke



  • Hallo,

    schau mal Dir mal das Beispiel in der MSDN an: http://msdn.microsoft.com/de-de/library/system.threading.parameterizedthreadstart(VS.80).aspx

    Gruss
    foodax



  • einen Timer erstellen vieleicht?!? Das ist auch ein Seperater Thread.

    Das Objekt:

    System::Windows::Forms::Timer^ mTimer;
    

    Initialisieren:

    mTimer = gcnew System::Windows::Forms::Timer();
    mTimer->Interval = 1000; //Also jede Sekunde
    mTimer->Tick += gcnew System::EventHandler(this, &Form1::TimerTickMethode);
    

    und die Methode:

    private: void TimerTickMethode(Object^ o, EventArgs^ e){
        //Alles was halt jede Sekunde Wiederholt werden soll
    }
    

    zum Schluss dann halt noch den Timer Starten:

    mTimer->Start();
    

    Den Interval kannst du ja einstellen wie du es willst.

    Wenn das jetzt das ist was du suchst.

    PS: ist nicht getestet, habs schnell ausm arm, aber müsste Funktionieren



  • Danke für die super antworten.

    ich habe jetzt einen Thread erstellt kann aber keine Parameter übergeben, wollte gerne das Handle von einem fenster mitgeben:

    Hier mal die Zeile:

    Thread^ aFenster = gcnew Thread( gcnew ThreadStart( &ThreadFind::ThreadProc));
    			aFenster->Start();
    

    Funktioniert auch alles, aber wie gebe ich da jetzt ein FensterHandle mit, also wo setze ich es rein.

    Danke



  • denjo303 schrieb:

    einen Timer erstellen vieleicht?!? Das ist auch ein Seperater Thread.

    nein ... das ist der gleiche Thread wie die GUI

    ich habe jetzt einen Thread erstellt kann aber keine Parameter übergeben, wollte gerne das Handle von einem fenster mitgeben

    das gibt es eine Überladung der Thread-Konsturktoren ... http://msdn.microsoft.com/en-us/library/1h2f2459.aspx



  • mogel schrieb:

    denjo303 schrieb:

    einen Timer erstellen vieleicht?!? Das ist auch ein Seperater Thread.

    nein ... das ist der gleiche Thread wie die GUI

    wieso, berechnungen sind doch da auch seperat möglich, und wenn der Timer dann hängt geht der rest weiter, also ists ein anderer oder?



  • Kommt auf den Timer draufan ob ein seperater Thread für die Callback Funcktion verwendet wird oder nicht.

    Beim: System::Windows::Forms::Timer wird KEIN seperater Thread verwendet.
    Beim: System::Threading::Timer wird ein seperater Thread (aus dem Pool) verwendet.

    Simon



  • ich hatte gedacht bei beiden ist das so. Deswegen hab ich auch den aus den WinForms genommen, da ist die handhabung ein wenig leichter. Also für leute die sich mit dem thema noch nicht so viel befasst haben.


Anmelden zum Antworten