Hi Dave,

The reason I ask specifically of the repeated references is, during one
of the sessions at U2UG-Denver, it was implied that each time you
reference a specific location in a table, the OS basically has to start
at the beginning of the table and 'find' its way to that location

Whilst REMOVE is the quickest way to walk through a dynamic array, field extraction in UV uses a hint mechanism to keep track of the last field accessed. For example, if you have a huge dynamic array and extract field 640, yes, it will have to walk along from the start.

If you next go to access field 650, it starts from the known position of field 640 so it will be much faster.

This mechanism only works for fields, not values. Also, as far as I know, Unidata doesn't have this mechanism so it would need to start over each time.

Dimensioned arrays are totally different. You can access X(1000) just as quickly as X(1) because it is little more than a reference to an indexed table of pointers.


Martin Phillips
Ladybridge Systems Ltd
17b Coldstream Lane, Hardingstone, Northampton NN4 6DB, England
+44 (0)1604-709200
_______________________________________________
U2-Users mailing list
[email protected]
http://listserver.u2ug.org/mailman/listinfo/u2-users

Reply via email to