Italian Wait For & ResumableSub

giannimaione

Well-Known Member
Licensed User
Longtime User
ho una semplice sub che mi ritorna un valore INT
B4X:
Sub MiaSub (...., ...., ) As INT
Dim Rtr as INT
bla.. bla .. bla..
ecc... ecc. ecc.
Return Rtr
End Sub
fin qui, non noto particolari problemi, ma se implemento la sub inserendo un Wait For...
devo trasformare la sub in ResumableSub
B4X:
Sub MiaSub (...., ...., ) As ResubableSub
Dim Rtr as INT
bla.. bla .. bla..
Wait For (AltraSub) complete (stringa as String)
altro codice ....
ecc... ecc. ecc.
Return Rtr
End Sub

sbaglio qualcosa? confondo qualcosa con la Wait For e la Sub ResubaleSub ??
Thanks!
 

giannimaione

Well-Known Member
Licensed User
Longtime User
Correggi per iniziare in ResumableSub
ResumableSub (punto, punto e virgola e due punti) ... ma sì! abbondiamo ... altrimenti dicono che siamo provinciali! Abbondandis in abbondandum (Totò e Peppino)
 

Sagenut

Expert
Licensed User
Longtime User
Direi che non confondi nulla.
Una sub che contiene un wait for o uno Sleep diventa automaticamente una Resumable.
 

LucaMs

Expert
Licensed User
Longtime User
Direi che non confondi nulla.
Una sub che contiene un wait for o uno Sleep diventa automaticamente una Resumable.
Lo diventa ed è pure visibile il cambiamento (simbolo) ma una Resumable non è necessariamente una funzione che restituisca un tipo Resumable.

Voglio dire che questa:
B4X:
Sub MiaSub(Parametro As Int) As Resumable
    ' codice
    Wait For... (oppure Sleep(10))
    ' codice
    Return True
End Sub
è una "routine resumable"; ma lo è anche questa:
B4X:
Sub MiaSub(Parametro As Int)
    ' codice
    Wait For... (oppure Sleep(10))
    ' codice
End Sub
 

MarcoRome

Expert
Licensed User
Longtime User
Direi che non confondi nulla.
Una sub che contiene un wait for o uno Sleep diventa automaticamente una Resumable.

Forse non mi sono spiegato.
Riprovo
@giannimaione ha scritto
Sub MiaSub (...., ...., ) As ResubableSub

quando ho scritto ....
Correggi per iniziare in ResumableSub

Era per dire che non è ResubableSub ma ResumableSub, altrimenti in compilazione penso che dia qualche problema.
tutto qui
 

Sagenut

Expert
Licensed User
Longtime User
Lo diventa ed è pure visibile il cambiamento (simbolo) ma una Resumable non è necessariamente una funzione che restituisca un tipo Resumable.

Voglio dire che questa:
B4X:
Sub MiaSub(Parametro As Int) As Resumable
    ' codice
    Wait For... (oppure Sleep(10))
    ' codice
    Return True
End Sub
è una "routine resumable"; ma lo è anche questa:
B4X:
Sub MiaSub(Parametro As Int)
    ' codice
    Wait For... (oppure Sleep(10))
    ' codice
End Sub
Sì, ma per avere un risultato di ritorno bisogna aggiungere
As ResumableSub
 

Sagenut

Expert
Licensed User
Longtime User
La mia risposta era diretta a @giannimaione che chiedeva se una Sub con un Wait For fosse una Resumable.
 
Top