CLEAR ALL CLEAR SET TALK OFF SET NULL ON ? "2 tables" ? "---------" FOR nT = 51 TO 52 SELECT 0 CREATE CURSOR ("Res"+ALLTRIM(STR(nT))) (C C(1)) APPEND BLANK ENDFOR DO TestPerfO ? ? "10 tables" ? "---------" CLEAR ALL FOR nT = 50 TO 60 SELECT 0 CREATE CURSOR ("Res"+ALLTRIM(STR(nT))) (C C(1)) APPEND BLANK ENDFOR DO TestPerfO ? ? "60 tables" ? "---------" CLEAR ALL FOR nT = 1 TO 60 SELECT 0 CREATE CURSOR ("Res"+ALLTRIM(STR(nT))) (C C(1)) APPEND BLANK ENDFOR DO TestPerfO ? ? "100 tables" ? "---------" CLEAR ALL FOR nT = 1 TO 100 SELECT 0 CREATE CURSOR ("Res"+ALLTRIM(STR(nT))) (C C(1)) APPEND BLANK ENDFOR DO TestPerfO PROCEDURE TestPerfO nSec= SECONDS() WITH CREATEOBJECT("someObject") .test ENDWITH ? "1.000.000 property call", SECONDS() - nSec DEFINE CLASS someObject AS Custom someproperty = .F. PROCEDURE test FOR nT = 1 TO 1000000 =this.someproperty ENDFOR ENDDEFINEFabio