Re: [call_external] how to use it ? [message #28442] |
Fri, 14 December 2001 11:53  |
Stein Vidar Hagfors H[1]
Messages: 56 Registered: February 2000
|
Member |
|
|
Craig Markwardt <craigmnet@cow.physics.wisc.edu> writes:
> Richard Hitier <hitier@cnrs-orleans.fr> writes:
>
>
>> Thank you for the answers,
>>
>> at least I could get some nice results,
>>
>> but it appears that I have to quit IDL interpreter as often
>> as possible to have my C routine changes understood.
>>
>> Does any one knows something about this ?
>>
>> This is a bit uncomfortable, and I still can't understand
>> why, but anyway I now know how to use call_ext.
>
> I think the problem is that you haven't unloaded the object file.
> Once it's loaded into memory, it doesn't matter what you do to the
> file on disk. .full_reset_session will unload everything, so you can
> start fresh.
The trouble is, you then start *really* fresh.. as in not having
executed the startup file, etc.. So, if most of your overhead in
"power cycling" IDL is in your IDL startup file, setting paths,
looking up stuff, creating any special system variables etc etc, you
won't gain all that much.... unless you use "state caching"... Let me
dig a little bit here...ouch, cannot find those anymore.
The idea is to put in your IDL startup file statements which will
detect the presence of a cache file (named after that particular
machine only, of course, if you're in a networking environment), and
skip the normal startup, doing only a "restore,'thismachine-save.dat'"
command that sets everything back to normal.
If the relevant cache file is *not* present, then you do the usual
stuff, and then make the savefile with
save,/all,filename='thismachine-save.dat'
Simple and effective..
--
------------------------------------------------------------ --------------
Stein Vidar Hagfors Haugan
ESA SOHO SOC/European Space Agency Science Operations Coordinator for SOHO
NASA Goddard Space Flight Center, Email: shaugan@esa.nascom.nasa.gov
Mail Code 682.3, Bld. 26, Room G-1, Tel.: 1-301-286-9028/240-354-6066
Greenbelt, Maryland 20771, USA. Fax: 1-301-286-0264
------------------------------------------------------------ --------------
|
|
|