Plateforme Level Extreme
Abonnement
Profil corporatif
Produits & Services
Support
Légal
English
The m. variable thing, the sequel
Message
De
16/12/2004 09:56:35
 
 
À
16/12/2004 09:07:13
Information générale
Forum:
Visual FoxPro
Catégorie:
Codage, syntaxe et commandes
Versions des environnements
Database:
Visual FoxPro
Divers
Thread ID:
00969478
Message ID:
00969733
Vues:
39
>Just one small thing, Scott...
>
>While I do think your test using VFP9 is valid (all done on same), there is the prospect that debugging code and/or testing assists are impacting the actual numbers.
>
>In particular I'd suspect that the slight penalty with alias prefixing might disappear in the final version.
>
>cheers

Hi Jim.

No, this is intrinsic.

The access more express than VFP happens on the first field of the active workarea withou the table prefix
( The prefixed one of table demands a job in more from part of the VM )

But m. issue it is not a speed issue:
m. without a active workarea it is slower
( for the same reason of the table prefix ):
CLEAR
CREATE CURSOR ZZ (AA I,A2 I,A3 I)
LOCAL Z

t1 = SECONDS()
FOR k=1 TO 10000000
  =z	&& no m. IS SLOWER
NEXT
? SECONDS()-T1

t1 = SECONDS()
FOR k=1 TO 10000000
  =m.z	&& m. IS FASTER
NEXT
? SECONDS()-T1

* remove the table fields list

SELECT 0
t1 = SECONDS()
FOR k=1 TO 10000000
  =z	&& no m. IS FASTER
NEXT
? SECONDS()-T1

t1 = SECONDS()
FOR k=1 TO 10000000
  =m.z	&& m. IS SLOWER
NEXT
? SECONDS()-T1
This is a correctness aspect.

If you write a program that use a memvar,
with m. it is correct without m. it is mistaken,
it can works, but it remains mistaken.

it is like resolving a mathematics problem, with a mistaken method and obtaining exact results.

Fabio
Précédent
Répondre
Fil
Voir

Click here to load this message in the networking platform