Gambas-it

Gambas3 => Domande tecniche => Topic aperto da: Gianluigi - 03 Settembre 2020, 13:50:41

Titolo: Richiesta di test per Sleep Wait
Inserito da: Gianluigi - 03 Settembre 2020, 13:50:41
Potreste per cortesia far girare il progetto allegato e riportare l'output della console.

Per fare il test occorre dare in rapida successione uno dietro l'altro alternati quattro click del mouse.
Prima partendo dal tasto destro del mouse per poi dare il sinistro, il destro e per ultimo ancora il sinistro.

Chiudere la finestra, riaprirla e dare i click del mouse in senso contrario (partendo dal sinistro).

Grazie

Questi i miei output su Ubuntu 20.04.1 LTS:

Codice: [Seleziona]
Button left = False - Button right = True
Sleep 1
Sleep 2
Sleep 3
Sleep 4
Sleep 5
Button left = True - Button right = False
Wait 1
Button left = False - Button right = True
Sleep 1
Sleep 2
Sleep 3
Sleep 4
Sleep 5
Button left = True - Button right = False
Wait 1
Wait 2
Wait 3
Wait 4
Wait 5
Wait 2
Wait 3
Wait 4
Wait 5
Codice: [Seleziona]
Button left = True - Button right = False
Wait 1
Button left = False - Button right = True
Sleep 1
Sleep 2
Sleep 3
Sleep 4
Sleep 5
Wait 2
Button left = True - Button right = False
Wait 1
Button left = False - Button right = True
Sleep 1
Sleep 2
Sleep 3
Sleep 4
Sleep 5
Wait 2
Wait 3
Wait 4
Wait 5
Sleep 1
Sleep 2
Sleep 3
Sleep 4
Sleep 5
Wait 3
Wait 4
Wait 5
Sleep 1
Sleep 2
Sleep 3
Sleep 4
Sleep 5
Titolo: Re:Richiesta di test per Sleep Wait
Inserito da: vuott - 03 Settembre 2020, 14:34:06
Per fare il test occorre dare in successione uno dietro l'altro alternati quattro click del mouse.
Prima partendo dal tasto destro del mouse per poi dare il sinistro, il destro e per ultimo ancora il sinistro.

Questi clic alternati devono essere effettuati velocemente uno dopo l'altro, senza alcuna attesa, oppure si deve attendere il termine del ciclo ?
Titolo: Re:Richiesta di test per Sleep Wait
Inserito da: Gianluigi - 03 Settembre 2020, 14:37:18
Per fare il test occorre dare in successione uno dietro l'altro alternati quattro click del mouse.
Prima partendo dal tasto destro del mouse per poi dare il sinistro, il destro e per ultimo ancora il sinistro.

Questi clic alternati devono essere effettuati velocemente uno dopo l'altro, senza alcuna attesa, oppure si deve attendere il termine del ciclo ?

Si velocemente, grazie.
Aggiungo un rapida prima di successione  :ciao:
Titolo: Re:Richiesta di test per Sleep Wait
Inserito da: vuott - 03 Settembre 2020, 14:40:59
Adesso è più chiaro.

Ecco il mio risultato:
Button left = False - Button right = True
Sleep 1
Sleep 2
Sleep 3
Sleep 4
Sleep 5
Button left = True - Button right = False
Wait 1
Button left = False - Button right = True
Sleep 1
Sleep 2
Sleep 3
Sleep 4
Sleep 5
Button left = True - Button right = False
Wait 1
Button left = True - Button right = False
Wait 1
Button left = False - Button right = True
Sleep 1
Sleep 2
Sleep 3
Sleep 4
Sleep 5
Button left = True - Button right = False
Wait 1
Button left = False - Button right = True
Sleep 1
Sleep 2
Sleep 3
Sleep 4
Sleep 5
Wait 2
Wait 3
Wait 4
Wait 5
Sleep 1
Sleep 2
Sleep 3
Sleep 4
Sleep 5
Wait 2
Wait 3
Wait 4
Wait 5
Sleep 1
Sleep 2
Sleep 3
Sleep 4
Sleep 5
Wait 2
Wait 3
Wait 4
Wait 5
Sleep 1
Sleep 2
Sleep 3
Sleep 4
Sleep 5
Wait 2
Wait 3
Wait 4
Wait 5
Sleep 1
Sleep 2
Sleep 3
Sleep 4
Sleep 5
Titolo: Re:Richiesta di test per Sleep Wait
Inserito da: Gianluigi - 03 Settembre 2020, 14:52:16
Sembra che tu abbia fatto tutto in un unico test e non in due test come richiesto  :-\
Citazione
Per fare il test occorre dare in rapida successione uno dietro l'altro alternati quattro click del mouse.
Prima partendo dal tasto destro del mouse per poi dare il sinistro, il destro e per ultimo ancora il sinistro.

Chiudere la finestra, riaprirla e dare i click del mouse in senso contrario (partendo dal sinistro).
Titolo: Re:Richiesta di test per Sleep Wait
Inserito da: vuott - 03 Settembre 2020, 15:30:33
Chiudere la finestra, riaprirla...

Intendi dire: chiudere il programma e rilanciarlo ?
Titolo: Re:Richiesta di test per Sleep Wait
Inserito da: kicco - 03 Settembre 2020, 15:57:13
Se ho capito bene come andava fatta la prova:
Codice: [Seleziona]
Button left = False - Button right = True
Sleep 1
Sleep 2
Sleep 3
Sleep 4
Sleep 5
Button left = True - Button right = False
Wait 1
Button left = False - Button right = True
Sleep 1
Sleep 2
Sleep 3
Sleep 4
Sleep 5
Button left = True - Button right = False
Wait 1
Wait 2
Wait 3
Wait 4
Wait 5
Wait 2
Wait 3
Wait 4
Wait 5
---------------------------------------------------
Ho minimizzato la finestra e riaperta (io ho interpretato così!)
---------------------------------------------------
Button left = True - Button right = False
Wait 1
Button left = False - Button right = True
Sleep 1
Sleep 2
Sleep 3
Sleep 4
Sleep 5
Wait 2
Button left = True - Button right = False
Wait 1
Button left = False - Button right = True
Sleep 1
Sleep 2
Sleep 3
Sleep 4
Sleep 5
Wait 2
Wait 3
Wait 4
Wait 5
Sleep 1
Sleep 2
Sleep 3
Sleep 4
Sleep 5
Wait 3
Wait 4
Wait 5
Sleep 1
Sleep 2
Sleep 3
Sleep 4
Sleep 5

Ubuntu 20.04.1
 :ciao:
Titolo: Re:Richiesta di test per Sleep Wait
Inserito da: cogier - 03 Settembre 2020, 16:03:35
Questo è il mio risultato.

Button left = False - Button right = True
Sleep 1
Sleep 2
Sleep 3
Sleep 4
Sleep 5
Button left = True - Button right = False
Wait 1
Button left = False - Button right = True
Sleep 1
Sleep 2
Sleep 3
Sleep 4
Sleep 5
Button left = True - Button right = False
Wait 1
Button left = False - Button right = True
Sleep 1
Sleep 2
Sleep 3
Sleep 4
Sleep 5
Button left = True - Button right = False
Wait 1
Button left = True - Button right = False
Wait 1
Button left = False - Button right = True
Sleep 1
Sleep 2
Sleep 3
Titolo: Re:Richiesta di test per Sleep Wait
Inserito da: kicco - 03 Settembre 2020, 16:09:02
Scusa Gianluigi, forse ho capito.
Dopo aver avviato il programma ed eseguito i quattro click, ho chiuso la finestra che è rimasta aperta fino al termine del ciclo con sleep.
Questo sia con la sequenza Dx Sx Dx Sx che con quella opposta Sx Dx Sx Dx. Di questa ti serve l'output?
 :ciao:
Titolo: Re:Richiesta di test per Sleep Wait
Inserito da: kicco - 03 Settembre 2020, 16:13:21
Comunque eccolo:
Codice: [Seleziona]
Button left = False - Button right = True
Sleep 1
Sleep 2
Sleep 3
Sleep 4
Sleep 5
Button left = True - Button right = False
Wait 1
Button left = False - Button right = True
Sleep 1
Sleep 2
Sleep 3
Sleep 4
Sleep 5
Button left = True - Button right = False
Wait 1
Wait 2
Wait 3
Wait 4
Wait 5
Wait 2
Wait 3
Wait 4
Wait 5
----------------------------------------------
Button left = True - Button right = False
Wait 1
Button left = False - Button right = True
Sleep 1
Sleep 2
Sleep 3
Sleep 4
Sleep 5
Wait 2
Button left = True - Button right = False
Wait 1
Button left = False - Button right = True
Sleep 1
Sleep 2
Sleep 3
Sleep 4
Sleep 5
Wait 2
Wait 3
Wait 4
Wait 5
Sleep 1
Sleep 2
Sleep 3
Sleep 4
Sleep 5
Wait 3
Wait 4
Wait 5
Sleep 1
Sleep 2
Sleep 3
Sleep 4
Sleep 5
Titolo: Re:Richiesta di test per Sleep Wait
Inserito da: Gianluigi - 03 Settembre 2020, 17:15:23
Ringrazio tutti per le prove.

Mi bastano e avanzano  :)

Praticamente avete risposto non solo al test in oggetto ma anche ad altro, avete chiaramente dimostrato la mia totale incapacità a spiegarmi.

Pertanto i molti dubbi che già avevo accumulato sullo scrivere un libro per Gambas si sono tramutati in certezza.
Da adesso mi asterrò dal mettere mano a nient'altro che non sia una mera discussione sul forum.

Espandendo il più possibile la spiegazione a meri esempi.

 :ciao:
Titolo: Re:Richiesta di test per Sleep Wait
Inserito da: vuott - 03 Settembre 2020, 17:48:41
Eeeeeeeeh ! E che sarà mai successo ?!
Che decisione esagerata !   ;D

Basta mettersi d'accordo sul significato delle parole.
Per me "Chiudere una finestra", significa: "Distruggere quell'Oggetto 'Finestra' ".
Voglio dire che io non lo intendo come "Abbassare o nascondere una finestra".
Così come "Chiudere un programma" io intendo "Terminare definitivamente l'esecuzione del codice di un applicativo".

Probabilmente intendiamo la medesima cosa, ma siccome avevo capito male la prima volta, il dubbio mi è rimasto.

Quindi, basta mettersi d'accordo sulle parole.
Torno alla mia domanda. Per "Chiudere la finestra, riaprirla..." intendi la medesima cosa che intendo io ?
La domanda è pertinente, poiché, essendo a me sorto quel dubbio (in quanto io non capito la procedura del test), al fine di effettuare correttamente il test come tu lo richiedi, debbo appunto capire come devo procedere.  :-\


Da adesso mi asterrò dal mettere mano a nient'altro che non sia una mera discussione sul forum.
Hai da realizzare la pagina Wiki sulla differenza tra WAIT e SLEEP: solo tu sei in grado farla !   :violent:
Titolo: Re:Richiesta di test per Sleep Wait
Inserito da: Gianluigi - 03 Settembre 2020, 18:28:39
Perché dici che è una decisione esagerata?
Non è mica presa contro di voi?
Non è mica colpa vostra se non so spiegarmi.
Tu hai una proprietà di linguaggio non comuni, te l'ho sempre riconosciuta, quando leggo qualcosa scritto da te lo comprendo, punto.
Io non ho quella capacità, mi sono sforzato ma i risultati li abbiamo appena visti.

Si tratta solo di prenderne atto, è una mia presa di coscienza.

Ad esempio qui scrivo:
Citazione
sembra che tu abbia fatto tutto in un unico test e non in due test come richiesto
Ma io in realtà avevo chiesto un test.
Avrei dovuto scrivere qualcosa come "sembra che tu abbia fatto il test in un unico passaggio..."

Per scrivere, credo valga ancor di più se si scrive roba scientifica, occorre essere molto precisi e appropriati e io purtroppo oltre che ignorante sono un distratto cronico.

Io non è che voglio abbandonare il forum, mi limito per il bene della wiki.
E non è affatto vero che solo io posso parlare di certi argomenti, specialmente se non li ho ben compresi.

Titolo: Re:Richiesta di test per Sleep Wait
Inserito da: vuott - 03 Settembre 2020, 19:07:00
Perché dici che è una decisione esagerata?
Non è mica colpa vostra se non so spiegarmi.
E' esagerata, perché nessuno è davvero capace di spiegarsi agli altri.
Dipende da molti fattori sia con riferimento a chi parla sia a chi ascolta.
...se ad un greco dell'età arcaica avessi detto nella sua lingua "La norma [nòmos] contiene precetti...", lui ti avrebbe detto che sei pazzo, perché lo stazzo contiene capre e/o pecore.   :rotfl:

Se l'ascoltatore non capisce, fa come me: chiede semplicemente e tranquillamente una precisazione sul punto ove ha il dubbio.


Non è mica colpa vostra se non so spiegarmi.
Io non ho quella capacità, mi sono sforzato ma i risultati li abbiamo appena visti.

Si tratta solo di prenderne atto, è una mia presa di coscienza.
...e hai fatto bene.
Altri, come sai, presentano codici di centinaia di righe o pretendono che uno stia nella loro mente, oppure si trasformi in un oracolo del dio Apollo.
Quante volte ne abbiamo parlato ?

Inoltre, è normale che qualcuno (come è successo a me) non capisca ad una prima lettura parte o tutto di un testo, e per questo magari chiede un chiarimento.
Se pretendessimo di essere capiti o di capire subito, il forum non servirebbe.  :-\
Tu stai dimenticando lo spirito del forum !   :'( :'(



...quando leggo qualcosa scritto da te lo comprendo, punto.
In vero riesco a essere un po' più chiaro, solo se anch'io mi impegno a rileggere quello che ho scritto.
Ma tu sai quante volte ho dovuto cambiare parti di testo nelle pagine, da me scritte, della Wiki, perché mi ero accorto di averle scritte con i piedi ?


Ah... ti rammento che, oltre alla pagina su WAIT e SLEEP nella Wiki, hai ancora da realizzare la Macchina del Tempo !  ...mi ser-ve !   >:(

(https://i.gifer.com/5HQV.gif)
Titolo: Re:Richiesta di test per Sleep Wait
Inserito da: Gianluigi - 03 Settembre 2020, 19:52:59
E' esagerata, perché nessuno è davvero capace di spiegarsi agli altri.
Dipende da molti fattori sia con riferimento a chi parla sia a chi ascolta.
...
Inoltre, è normale che qualcuno (come è successo a me) non capisca ad una prima lettura parte o tutto di un testo, e per questo magari chiede un chiarimento.
Se pretendessimo di essere capiti o di capire subito, il forum non servirebbe.
Tu stai dimenticando lo spirito del forum !

Ottime argomentazioni, mi hai convinto, in effetti avevo scritto anche io qualcosa del genere (o almeno credo di averlo fatto, visto che l'ho scritto in inglese sulla ML)

Quindi per non essere maleducato e rispondere alla tua domanda e anche ai dubbi di kicco, riformulo la richiesta così:

Per fare il test occorre, dopo aver avviato il programma, dare in rapida successione uno dietro l'altro quattro click del mouse per volta sulla form in due passaggi.

Il primo passaggio, vale a dire i primi quattro click alternati partendo dal tasto destro del mouse per poi dare il sinistro, il destro e per ultimo ancora il sinistro.

Attendere la fine dei cicli e chiudere la form, copiando l'output della console e incollandolo in un editor di testo.

Riavviare il programma e dare i quattro click del secondo passaggio in senso contrario al precedente e cioè partendo dal tasto sinistro del mouse.

Copiare e incollare l'output della console aggiungendolo al precedente e riportarlo qui.

Grazie


Comunque kicco seguendo un altro cammino aveva ottenuto lo stesso risultato, output riportato pari al mio.
Citazione
Ah... ti rammento che, oltre alla pagina su WAIT e SLEEP nella Wiki, hai ancora da realizzare la Macchina del Tempo !  ...mi ser-ve !   
Riguardo alla macchina del tempo, come tu ben sai, per viaggiare nel tempo basta infilarsi in un buco nero.
La difficoltà sta tutta nel non sbagliare il buco, ma li non c'è algoritmo che ti possa indirizzare  :-\

Comunque se anche questa volta non avete capito l'iter dei passaggi, vi prego, fate finta di niente.  :P

Sto per uscire, speriamo bene...

a domani  :ciao:
Titolo: Re:Richiesta di test per Sleep Wait
Inserito da: vuott - 03 Settembre 2020, 20:03:30
Riguardo alla macchina del tempo, come tu ben sai, per viaggiare nel tempo basta infilarsi in un buco nero.
La difficoltà sta tutta nel non sbagliare il buco, ma li non c'è algoritmo che ti possa indirizzare  :-\

Forse ce la faccio... 

  https://www.newscientist.com/article/2253157-travelling-through-a-wormhole-without-dying-may-actually-be-possible/
Titolo: Re:Richiesta di test per Sleep Wait
Inserito da: vuott - 03 Settembre 2020, 20:12:53
...ad ogni modo ecco i risultati del mio test secondo le tue indicazioni dettagliate:

Button left = False - Button right = True
Sleep 1
Sleep 2
Sleep 3
Sleep 4
Sleep 5
Button left = True - Button right = False
Wait 1
Button left = False - Button right = True
Sleep 1
Sleep 2
Sleep 3
Sleep 4
Sleep 5
Button left = True - Button right = False
Wait 1
Wait 2
Wait 3
Wait 4
Wait 5
Wait 2
Wait 3
Wait 4
Wait 5



Button left = True - Button right = False
Wait 1
Button left = False - Button right = True
Sleep 1
Sleep 2
Sleep 3
Sleep 4
Sleep 5
Wait 2
Button left = True - Button right = False
Wait 1
Button left = False - Button right = True
Sleep 1
Sleep 2
Sleep 3
Sleep 4
Sleep 5
Wait 2
Wait 3
Wait 4
Wait 5
Sleep 1
Sleep 2
Sleep 3
Sleep 4
Sleep 5
Wait 3
Wait 4
Wait 5
Sleep 1
Sleep 2
Sleep 3
Sleep 4
Sleep 5
Titolo: Re:Richiesta di test per Sleep Wait
Inserito da: kicco - 03 Settembre 2020, 20:20:30
Comunicare è un'operazione complessa tutt'altro che scontata.
So però che se l'obiettivo è comprendersi, basta avere pazienza e mettersi nei panni dell'altro.
Direi che col tema dei "Menu popoup + cicli con wait" di qualche tempo fa io ho raggiunto un punto di altezza ineguagliabile (di incomprensione).
Comunicare è un'operazione che richiede umiltà e pazienza, siamo diversi e con linguaggi differenti.
Citazione
Comunque kicco seguendo un altro cammino aveva ottenuto lo stesso risultato, output riportato pari al mio.
...e questo dimostra che sono un genio!  ;D
E a proposito di macchina del tempo e di buchi neri, quante storie, in montagna, da piccolo di buco nero ce ne era uno in giardino con la carta di giornale. Ovviamente di un giornale ancora da pubblicare!
 :P
Titolo: Re:Richiesta di test per Sleep Wait
Inserito da: vuott - 03 Settembre 2020, 20:36:58
...e questo dimostra che sono un genio!  ;D
E a proposito di macchina del tempo e di buchi neri, quante storie, in montagna, da piccolo di buco nero ce ne era uno in giardino con la carta di giornale. Ovviamente di un giornale ancora da pubblicare!
 :P

(https://media.tenor.com/images/12a17503079fabbbf3cda2a5daea0b3e/tenor.gif)
Titolo: Re:Richiesta di test per Sleep Wait
Inserito da: Gianluigi - 03 Settembre 2020, 23:08:20
Citazione
Comunque kicco seguendo un altro cammino aveva ottenuto lo stesso risultato, output riportato pari al mio.
...e questo dimostra che sono un genio!  ;D
Sono d'accordo  :ok:
Citazione
E a proposito di macchina del tempo e di buchi neri, quante storie, in montagna, da piccolo di buco nero ce ne era uno in giardino con la carta di giornale. Ovviamente di un giornale ancora da pubblicare!
 :P

...ma principalmente e sopratutto per questa battuta che per me è la più bella e intelligente che ho sentito da un anno a questa parte come minimo  :rotfl: :rotfl: :rotfl:
kicco è ritornato!!!
 :yeah:
Titolo: Re:Richiesta di test per Sleep Wait
Inserito da: Gianluigi - 04 Settembre 2020, 12:08:38
Ritornando seri:

I risultati del test danno esito uguale per tutti, questo a mio parere dimostra con chiarezza che l'uso di Sleep blocca lo svolgimento del programma, mentre Wait manda avanti gli altri processi del programma.

Infatti se noi partiamo con Sleep blocchiamo subito il programma, finito Sleep parte per un attimo Wait ma viene subito bloccato dal secondo Sleep e solo alla fine si procede col processare Wait che processa il secondo Wait al suo interno.

Tutt'altra cosa succede se noi partiamo con Wait che permetterà di processare Sleep e Wait al suo interno e solo alla fine di ogni Wait abbiamo il blocco procurato da Sleep.

Da qui il raddoppio di Sleep.

Cosa ne pensate ha senso?
Titolo: Re:Richiesta di test per Sleep Wait
Inserito da: vuott - 04 Settembre 2020, 12:18:37
Cosa ne pensate ha senso?

Condivido.

Sul comportamento di Wait e Sleep se ne era parlato anche qui:
   https://www.gambas-it.org/smf/index.php?topic=7943.0
Titolo: Re:Richiesta di test per Sleep Wait
Inserito da: Gianluigi - 04 Settembre 2020, 13:48:42
Cosa ne pensate ha senso?

Condivido.
Allego anche un test con il timer che sembrerebbe confermare ulteriormente  :ok:
penso che questa sia una dimostrazione ancora più chiara.
Citazione

Sul comportamento di Wait e Sleep se ne era parlato anche qui:
   https://www.gambas-it.org/smf/index.php?topic=7943.0

Giusto, occorre tener conto di quanto afferma Minisini e cioè che l'uso di WAIT con i popup tutti avvia un nuovo ciclo di eventi.

 :ciao:
Titolo: Re:Richiesta di test per Sleep Wait
Inserito da: kicco - 04 Settembre 2020, 15:36:47
Vi seguo e condivido!
Titolo: Re:Richiesta di test per Sleep Wait
Inserito da: vuott - 04 Settembre 2020, 16:18:21
Il nome "Sleep ", attribuito a questa istruzione, mi sembra chiarificatore della sua funzione: mette a dormire l'intero processo.
Codice: [Seleziona]
Public Sub Form_Open()

  Me.Show
  Wait 0.5   ' Il ''Wait', non bloccando l'intero processo, consente che il Form si apra completamente
 
  Sleep 5
 
  Print "Fine azione dello 'Sleep' "

End


Public Sub Button1_Click()  ' Si noterà che lo "Sleep" impedisce lo scatenarsi dell'Evento "_Clic()" del Button !

  Print "Clic"

End

Wait, invece, arresta la sola particolare procedura del codice giunta alla riga di quell'istruzione di attesa, non interferendo però con altre eventuali parti in corso del processo.
Codice: [Seleziona]
Public Sub Form_Open()

  Me.Show

     Wait 5

  Print "Fine azione del 'Wait'"

End


Public Sub Button1_Click()

  Print "Clic"

End

In vero, sia Sleep che Wait interrompono l'esecuzione corretta e completa di un Evento, qualora posti all'interno della routine di tale Evento. Sleep però, in più rispetto a Wait, sembra non limitarsi a bloccare, per il tempo stabilito, il sollevarsi dell'Evento e la procedura ove tale istruzione di attesa è posta, ma blocca ogni altro Evento che possa essere sollevato.
Anche il Timer è soggetto a tale regola: prevale l'istruzione Sleep (provare codice allegato da Gianluigi).
Titolo: Re:Richiesta di test per Sleep Wait
Inserito da: Gianluigi - 04 Settembre 2020, 17:53:14
Sono d'accordo Sleep prevale su tutto il progetto in cui è lanciato.
Davvero prepotente.

Basandomi su quanto discusso ho aggiunto la pagina SLEEP alla nostra wiki:
https://www.gambas-it.org/wiki/index.php?title=SLEEP
Titolo: Re:Richiesta di test per Sleep Wait
Inserito da: vuott - 04 Settembre 2020, 18:52:29
Davvero prepotente.

Eh, sì !

(https://i.gifer.com/Wyax.gif)