Threads ?



  • Huhu,

    merci für die präzise Antwort. Ich bin noch nicht so lange dabei in der Programmierung. Ich dachte, dass es eventuell keine richtigen Betriebssytem-Threads sind, sondern eine Art Pseudo-Threads, die den Eindruck erwecken als wären da echte Threads am Laufen. Eine Art Zeitscheiben-System innerhalb eines Programms, das durch komplexe Programmierung und inline-Assembler (gut: dann wären es wieder keine C++Sprachmittel ;)) erreicht wurde.

    Damit liege ich wohl total daneben. Aber wie schon gesagt: ich stecke in der Materie noch nist so sehr drin'. Verzeiht' mir meine naive Annahme.

    Grüße



  • Wenn ich jetzt die Threads benutzen möchte von Boost, hab da im Forum schon gesehen wie man die "initialisiert" muss ich dann alles andere auch als Thread machen oder kann der rest so normal ohne threads lassen ?



  • Die Frage verstehe ich nicht.



  • Hi Mortal2006,

    😕
    hast du irgendne Ahnung was Threads sind, und wie sie funktionieren. Ich hab
    nicht den Eindruck und empfehle dir daher dringend dich darüber ein wenig zu
    informieren sonst wirst du nicht viel Freude an deinem Programm haben. 🙂

    mfg JJ



  • such mal im Winapi forum nach threads da wirst du fündig.



  • Naja wieviel Ahnung ich von Threads hab hab ich ja im ersten Post gesagt 🙂
    Ich bin einfach davon ausgegangen das man damit das machen kann was ich brauch ... ich werds jetzt einfach mal testen ...



  • Mortal2006 schrieb:

    Da wäre es ja am einfachsten wenn z.b. die Funktion "GegnerErstellen" erstmal mit Sleep(xxx) angehalten wird und dann irgendwie als Thread im hintergrund laufen würde 🙂

    Das einfachste wäre ein Timer, der nach z.B. 5sec. eine Funktion aufruft, die einen Gegner erstellt. Wenn du die SDL benutzt, dann hast du Timerfunktionen mit dabei.

    Ich Schätzte, dass du einen Mail-Loop hast, wo dein Spiel drin abläuft. Darin kanst du auch einfach einen Counter plazieren, der runter zählt bis ein Gegner erzeugt werden soll.



  • Das ist cool 🙂 dann brauch ich das mit den Threads erstmal nicht mehr !
    Thx!



  • Ich hab jetzt doch nochmal ne frage, die bezieht sich zwar nicht auf threads, aber da es schon so viele timer Threads gibt...

    Was ist eine Callback funktion ? Ich hatte mir das so vorgestellt das die Funktion
    aufgerufen wird wenn der Timer abgelaufen ist, scheint aber nicht so zu sein ...
    Muss ich den Timer jetzt abfragen um dann seperat eine funktion zu starten ?

    if(TimerID <= 0)
    


  • Mortal2006 schrieb:

    Was ist eine Callback funktion ? Ich hatte mir das so vorgestellt das die Funktion
    aufgerufen wird wenn der Timer abgelaufen ist

    Ein Callback is eine Funktion, die aufgerufen wird, wenn ein bestimmtes Ereigniss auftritt. Die Funktion sollte aufgerufen werden, wenn der Timer abgelaufen ist.

    Wie hast du denn jetzt den Timer implementiert? Mit der SDL, mit der WinAPI, oder mit Signalen?



  • ... Blub ...
    Ich hatte

    SDL_TimerID blubber;
    	blubber = SDL_AddTimer(1000, Callback, NULL);
    

    vor

    SDL_Init(SDL_INIT_VIDEO | SDL_INIT_TIMER)
    

    gemacht 🙂 Obs daran lag ? ka ...


Anmelden zum Antworten