Plateforme Level Extreme
Abonnement
Profil corporatif
Produits & Services
Support
Légal
English
COM object creation is very slow
Message
De
29/03/2004 12:54:17
 
 
Information générale
Forum:
Visual FoxPro
Catégorie:
Applications Internet
Divers
Thread ID:
00890236
Message ID:
00890518
Vues:
17
David,

the init method is empty. So no code is executed during creation.
The only difference it that large COM contains additional routines which are not called. I build it starting from other main file. The OLEPUBLIC class included in this application is exactly the same.

Do you really think that COM object instation speed should depend on its size exponentially ?

5 MB = 3 seconds
7 MB = 12 seconds

so

17 MB = forever !?

Really ?

Is so, do you also think that VFP application exe statup time should depend on the size of application exe file ?

>Andrus,
>
>12 seconds to load a gigantic DLL like that doesn't seem to be that bad.
>
>When you trimmed it down to 5mb did you rip out a lot of stuff that was doing a lot of things like opening tables etc?
>
>Can you rearchitect the system to use several smaller COM objects instead of one monolithic COM? I don't use FOXISAPI, but if this object has such a high startup cost, can you instantiate it just once and then keep using the same instance?
>
>>I created VFP 7 MTDLL myapp.dll which contains one COM object myobj.
>>I try to use it from VFP . I have 1.7 GHz Pentium 4 computer with Windows XP SP1
>>myapp.dll file size is 7 MB.
>>
>>It takes 12 seconds for FOXISAPI to load this object.
>>If I call MTDLL with PoolMode=0, each FOXISAPI call takes 12 seconds.
>>
>>The command from VFP
>>
>>myobj = CREATEOBJECT('myapp.myobj')
>>
>>also takes 12 seconds.
>>
>>If I create same COM object with fewer procedures so that myapp.dll file
>>size is 5 MB, CREATEOBJECT() command takes 3 seconds.
>>
>>I also tried to create a EXE com server, but this has the same problem.
>>
>>Any idea how to decrease 12 seconds creation time of 7 MB VFP COM object ?
Andrus
Précédent
Suivant
Répondre
Fil
Voir

Click here to load this message in the networking platform