Ammetto la mia ignoranza in materia, ma questo non ritarda il ciclo di un microsecondo?:
Public Sub Main()
Dim i As Integer
Do
Inc i
Wait 0.0000001
Loop Until i = 2000000
Print i
End
Ho provato a mettere in pratica le indicazioni di kicco ma mi sono slogato una spalla ;D
P.S. con Sleep non funziona con Wait sembra di si, potete fare la prova prima commentando Wait e poi de-commentandolo per vedere la differenza.
:ciao: :ciao:
La domanda vera è:
le funzioni di "attesa" di Gambas supportano valori inferiori al millesimo di secondo ?
Forse potrebbero aiutarci questi esempi: :-X
Public Sub Main()
Print CFloat(Time)
Wait 0.001
Print CFloat(Time)
Print " |^^^"
Print " Sdcm"
Print "S= secondi\nd= decimi di sec.\nc= centesimi di sec.\nm= millisecondi"
End
Public Sub Main()
Print CFloat(Time)
Wait
Print CFloat(Time)
Print " |^^^"
Print " Sdcm"
Print "S= secondi\nd= decimi di sec.\nc= centesimi di sec.\nm= millisecondi"
End
Public Sub Main()
Print CFloat(Time)
Wait 0.0001
Print CFloat(Time)
Print " |^^^"
Print " Sdcm"
Print "S= secondi\nd= decimi di sec.\nc= centesimi di sec.\nm= millisecondi"
End
:ciao: :ciao:
Pensavo in realtà a una cosa così, ma purtroppo, ho l'impressione, che il contatore non parta in parallelo al Main quando riceve il comando enabled, ma aspetti che termini il ciclo LOOP...
Private timer1 As Timer
Private a As Boolean
Public Sub Main()
Dim i As Integer
a = False
timer1 = New Timer As "timer1"
timer1.delay = 1 'carica 1ms nel timer
timer1.enabled = 1 'fa partire il timer
Do
Inc i
Loop Until a = True
Print i
End
Public Sub Timer1_timer()
a = True 'allo scadere modifica la variabile
timer1.Enabled = 0 'ferma il timer
Print "Stop"
End
:ciao:
PS: vediamo come mi cazzia Vuott, stavolta! :P