| |
|
|
 p.specht
 | Fil- nProcs peut am Ende une Retour-Wert liefern. Mir ist bloß pas bien sûr, comment on den im Hauptprogramm ausliest. Gibt es là une simple Possibilité?
Demo avec 3 gesteuerten Threads:
{$cleqt}
Windowstyle 24
cls rgb(255,200,200)
var edit& =@Créer("Edit",%Hwnd,"1",40,20, 140,20)
var edit2&=@Créer("Edit",%Hwnd,"2",40,50, 140,20)
var edit3&=@Créer("Edit",%Hwnd,"3",40,80, 140,20)
var thread& =thread.start(procaddr(meinThread), edit&, "1000")
var thread2&=thread.start(procaddr(meinZweiterThread), edit2&, "2000")
var thread3&=thread.start(procaddr(meinDritterThread), edit3&, "3000")
var n&=0
font 2
locate 15,1
Imprimer " Theads volonté qui Reihe pour finissez mittels ESC-bouton!"
Imprimer "\n Hauptprogramm eh bien dans Hauptschleife!"
repeat
locate 23,23:imprimer n&:inc n&
Titre de la fenêtre str$(n&)
waitinput 100
until (%clé=27) or (%clé=2)
imprimer "\n Hauptschleife wurde sortir de."
waitinput 1500
thread.stop(thread&)
tandis que thread.is(thread&)
endwhile
thread.close(thread&)
imprimer "\n Habe Fil Nr. 1 finissez."
waitinput 1500
thread.stop(thread2&)
tandis que thread.is(thread2&)
endwhile
thread.close(thread2&)
imprimer " Habe Fil Nr. 2 finissez."
waitinput 1500
thread.stop(thread3&)
tandis que thread.is(thread3&)
endwhile
thread.close(thread3&)
imprimer " Habe Fil Nr. 3 finissez."
waitinput 1500
beep
imprimer "\n ici Hauptprogramm: Isch 'abe feddisch... BYEBYE!"
waitinput 3000
FIN
nproc meinThread :parameters thread&,dataLong&,dataString$
whilenot thread.message(thread&)==wm_close
settext(dataLong&,"["+time$(0)+"."+substr$(time$(1),1,".")+"]")
sleep(1000)
endwhile
return 0
endproc
nproc meinZweiterThread :parameters thread2&,dataLong2&,dataString2$
whilenot thread.message(thread2&)==wm_close
settext(dataLong2&, "("+time$(1)+"."+substr$(time$(0),1,".")+")")
sleep(1333)
endwhile
return 0
endproc
nproc meinDritterThread :parameters thread3&,dataLong3&,dataString3$
whilenot thread.message(thread3&)==wm_close
settext(dataLong3&, "{"+time$(0)+"."+substr$(time$(1),1,".")+"}")
sleep(3000)
endwhile
return 0
endproc
|
|
|
| XProfan 11Computer: Gerät, daß es in Mikrosekunden erlaubt, 50.000 Fehler zu machen, zB 'daß' statt 'das'... | 25.11.2018 ▲ |
|
|
|
|
 p.specht
 | évident gibt es une variante de Fil.Message aussi im Hauptprogramm bzw. im parents-Prozess. Muss seulement seulement draufkommen, comment on cela oui c'est ca abfrägt. Hat cela déjà quelqu'un geschafft? |
|
|
| Computer: Gerät, daß es in Mikrosekunden erlaubt, 50.000 Fehler zu machen, zB 'daß' statt 'das'... | 26.11.2018 ▲ |
|
|
|
|
 | si je mich droite erinnere, ensuite ist thread& un 44 Byte großer grenier -
qui Werte pour thread.message() pour wParam, lParam stehen dans thread& à Offset 24, 28 et 32 mais seulement si le Funktion thread.message verwendet wurde. auparavant stehen cet 3 Werte à den Pos. 12, 16, 20.
Pour geordnete communication avec qui Hauptschleife vlt. am Besten Win32 SendMessage verwenden.
eh bien suis je mir toutefois pas sûrement, si je avec cela geholfen habe. |
|
|
| |
|
|
|
 p.specht
 | merci iF, werd´s versuchen ... |
|
|
| XProfan 11Computer: Gerät, daß es in Mikrosekunden erlaubt, 50.000 Fehler zu machen, zB 'daß' statt 'das'... | 27.11.2018 ▲ |
|
|
|