One more test:

If I disable the class preloader, then the order is:

0, 1, 3, 6, 2, 4, 5, 5b, 5c

where the jarindex looks like this:

JarIndex-Version: 1.0

JmolApplet0.jar
org
org/jmol
org/jmol/api
org/jmol/appletwrapper
JmolApplet.class
JmolAppletControl.class
jmol75x29x8.gif

JmolApplet1.jar
org
org/jmol
org/jmol/api
org/jmol/applet
org/jmol/i18n
org/jmol/popup

JmolApplet2.jar
javax
javax/vecmath

JmolApplet3.jar
org
org/jmol
org/jmol/adapter
org/jmol/adapter/smarter
org/jmol/bspt
org/jmol/g3d
org/jmol/geodesic
org/jmol/symmetry
org/jmol/util
org/jmol/vecmath

JmolApplet4.jar
org
org/jmol
org/jmol/adapter
org/jmol/adapter/readers

JmolApplet5.jar
org
org/jmol
org/jmol/jvxl
org/jmol/jvxl/api
org/jmol/jvxl/calc
org/jmol/jvxl/data
org/jmol/jvxl/readers
org/jmol/quantum
org/jmol/shapespecial

JmolApplet5b.jar
org
org/jmol
org/jmol/smiles

JmolApplet5c.jar
org
org/jmol
org/jmol/shapebio

JmolApplet6.jar
org
org/jmol
org/jmol/atomdata
org/jmol/modelframe
org/jmol/shape
org/jmol/viewer

JmolApplet_i18n.jar
org
org/jmol
org/jmol/translation
org/jmol/translation/JmolApplet




Miguel wrote:

>>That's not my understanding, but I haven't tested, I have just read Sun
>>doc :
>>- INDEX.LIST is only a list of which package is in which jar. It's only
>>used when trying to find a class, by reading first the jars that contain
>>the package.
>>    
>>
>
>Correct.
>
>Sun added the 'index' feature later in order to give the class loader the
>ability to selectively load classes.
>
>If any class from a .jar file is needed then then entire .jar file is
>pulled down.
>
>  
>
>>- "preloading" is coded in JmolApplet.java (in the default package, not
>>in org.jmol....), by providing a list of classes to preload.
>>    
>>
>
>I coded the 'preload' mechanism so that different class files could get
>loaded in parallel.
>
>I was trying to accomplish the following:
>
> * avoid the following situation:
>   - first .jar file downloads
>   - execution starts until a non-present class is seen
>   - second .jar file downloads
>   - execution continues until another non-present class is seen
>   - ...
> * have more than one .jar file being downloaded concurrently in order to
>help ensure that 100% of the network bandwidth was used. Basically, in
>some WAN transfers downloading 2 25Mb files is faster than 1 50 Mb file.
>
> * I was anticipating new types of functionality (like iso-surface) that
>were not part of the 'core' functionality and could be put in other .jar
>files.
>
>
>Overall, I put quite a bit of work into it and was quite proud of it when
>I finished. But in hindsight I don't know if it actually accomplished very
>much. It might have been easier just to leave everything in one big .jar
>file.
>
>  
>
>>>2) If the jar file is NOT on the list, then that file doesn't load until
>>>it is needed. But there's a
>>>catch. What happens is that as soon as one item that has not been loaded
>>>is requested, then
>>>all the remaining Jar files are transferred, because JVM has no idea
>>>which jar file to load.
>>>
>>>      
>>>
>>JVM should know in which jar file the class file is because build.xml
>>adds this information in JmolApplet0.jar (the index="true" parameter for
>>JmolApplet0.jar). The <indexjars> tag should contain all jars. That's
>>what creates INDEX.LIST.
>>    
>>
>
>Correct.
>
>That is the purpose of 'jar indexing'. The first .jar file has an index
>that tells which .jar file holds each of the classes.
>
>
>Miguel
>
>
>-------------------------------------------------------------------------
>This SF.net email is sponsored by DB2 Express
>Download DB2 Express C - the FREE version of DB2 express and take
>control of your XML. No limits. Just data. Click to get it now.
>http://sourceforge.net/powerbar/db2/
>_______________________________________________
>Jmol-developers mailing list
>[email protected]
>https://lists.sourceforge.net/lists/listinfo/jmol-developers
>  
>


-------------------------------------------------------------------------
This SF.net email is sponsored by DB2 Express
Download DB2 Express C - the FREE version of DB2 express and take
control of your XML. No limits. Just data. Click to get it now.
http://sourceforge.net/powerbar/db2/
_______________________________________________
Jmol-developers mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/jmol-developers

Reply via email to