Código: Seleccionar todo
nSeconds := Seconds()
Ascan( AppData:aGruixos, {|x| x[1] == ::aCodiProducte[::oCboxProducte:nIndex] .and. x[2] == AppData:aProteccio[1,::oCboxProteccio:nIndex] .and. x[3] >= ::oEditMassivitat:Value .and. x[15] == ::oCboxTempCritica:cText} )
logdebug( Seconds() - nSeconds ) //1,50 a 2 segundos
nSeconds := Seconds()
c1 := ::aCodiProducte[::oCboxProducte:nIndex]
c2 := AppData:aProteccio[1,::oCboxProteccio:nIndex]
n3 := ::oEditMassivitat:Value
c4 := ::oCboxTempCritica:cText
Ascan( AppData:aGruixos, {|x| x[1] == c1 .and. x[2] == c2 .and. x[3] >= n3 .and. x[15] == c4} )
logdebug( Seconds() - nSeconds ) //0,01 segundos
No me ocurre en TODAS las PCs, sinó que algún cliente que tiene por ejemplo una con procesador Raiden, o una con un i7, les ocurre que va lento este proceso.
... yo tengo una i3 10generación o una antigualla de intel celeron con 4Gb, y no tengo problemas de velocidad.
Yo tengo Windows 10 o 11 Enterprise 64bits mi cliente Windows 10 o 11 Home.
Si alguien me pudiera dar alguna explicación, se lo agradecería, ya que me ayudaria a entender un poco más el funcionamiento interno, creo, y así poder depurar igual otras aplicaciones que estoy utilizando como el primer caso y que sin darme cuenta, igual lo estoy haciendo yo mal.