Thread et débogueur

Sujets variés concernant le développement en PureBasic
filperj
Messages : 395
Inscription : jeu. 22/janv./2004 1:13

Thread et débogueur

Message par filperj »

Je savais pas trop dans quelle section poster ça, je sais pas si c'est un bug ou si c'est moi qui ait pas tout compris...
Bref, voilà un prog qui me semble marcher correctement sans débogueur, mais avec ça fait un peu n'importe quoi, et pas toujours la même chose.. (même des trucs rigolos que je saurais pas faire exprès, desfois :lol: )
Dites moi ce que ça donne chez vous.

Code : Tout sélectionner

Structure lignedepanneaux
   p.b[256]
EndStructure

Structure tableaudepanneaux
   StructureUnion
      l.lignedepanneaux[256]
      b.b[256*256]
   EndStructureUnion
EndStructure

Global grospanneau.tableaudepanneaux

#segm=256*256-1
Procedure pannellenthread(foo)
   Repeat
      x+1
      grospanneau\b[(x)&#segm]=(grospanneau\b[(x-1)&#segm]+grospanneau\b[(x+1)&#segm]+grospanneau\b[(x-256)&#segm]+grospanneau\b[(x+256)&#segm])/4+1
   ForEver
EndProcedure

thr=CreateThread(@pannellenthread(),0)

If thr=0 : Debug "Thread non créé" : EndIf

;ThreadPriority(thr,2)

If InitSprite()
   If OpenWindow(0,0,0,256,256,#pb_window_systemmenu|#pb_window_maximizegadget,"") And OpenWindowedScreen(WindowID(),0,0,256,256,1,0,0)
      CreateSprite(0,256,256,0)
      SetFrameRate(30)
      Repeat
         sproutput=SpriteOutput(0)
         If sproutput
         If StartDrawing(sproutput)
            ;PauseThread(thr)
            For y=0 To 255 : For x=0 To 255
               coul=grospanneau\l[y]\p[x]&255
               Plot(x,y,coul<<8)
            Next : Next
            ;ResumeThread(thr)
         StopDrawing() : EndIf
         EndIf
         DisplaySprite(0,0,0)
         FlipBuffers(1)
      Until WindowEvent()=#pb_event_closewindow
   EndIf
EndIf
Le chaos l'emporte toujours sur l'ordre
parcequ'il est mieux organisé.
(Ly Tin Wheedle)
Oliv
Messages : 2117
Inscription : mer. 21/janv./2004 18:39

Message par Oliv »

Avec débuger ça donne parfois de jolies choses :lol: :lol:
Même une fois l'erreur "IndexArray out of bound", c'est vrai que c'est pas très normal
Répondre