1<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> 2<html> 3 4<head> 5<meta http-equiv="Content-Type" content="text/html; charset=windows-1252"> 6<META http-equiv="Content-Style-Type" content="text/css"> 7<LINK rel="stylesheet" type="text/css" href="../../CSS/revolution.css"> 8<title>RSO Sample Demo - Manually</title> 9</head> 10 11<body> 12 13<H1>RSO Sample Demo - Manually</H1> 14 15<H2>Location</H2> 16<p><code>$REVOLUTION_SDK_ROOT/build/demos/rsodemo/Manually</code></p> 17 18<H2>Overview</H2> 19<p> 20Sample for not using linked lists.<br>The link will be specified directly from the program. 21</p> 22 23<H2>Description</H2> 24<p> 25The internal operation of each module is completed using <code><a href="../RSOStaticLocateObject.html">RSOStaticLocateObject</a></code> or <code><a href="../RSOLocateObject.html">RSOLocateObject</a></code>, and each module will be linked using <code><a href="../RSOLink.html">RSOLink</a></code>.<br>Enter the following to reference module B from module A. 26</p> 27<TABLE border="1" width="100%"> 28 <TBODY> 29 <TR> 30 <TD width="100%"> 31 <PRE><CODE> 32RSOLink(moduleA, moduleB); 33</CODE></PRE> 34 </TD> 35 </TR> 36 </TBODY> 37</TABLE> 38<p> 39To break a link, disconnect all links using <code><a href="../RSOUnLink.html">RSOUnLink</a></code> and use <code><a href="../RSOUnLocateObject.html">RSOUnLocateObject</a></code> to return the internal information to pre-link state.<br>Enter the following to stop referencing module B from module A. 40</p> 41<TABLE border="1" width="100%"> 42 <TBODY> 43 <TR> 44 <TD width="100%"> 45 <PRE><CODE> 46RSOUnLink(moduleA, moduleB); 47</CODE></PRE> 48 </TD> 49 </TR> 50 </TBODY> 51</TABLE> 52<p> 53When a linked list is used, a link will be created for all combinations, resulting in unnecessary link operation.<br>By doing this operation manually, unnecessary link processing may be omitted.<br>In the sample, since we know that module C references only the static module, it is not linked with other dynamic modules.<br> 54</p> 55<p> 56This should be effective in shortening the link processing time for dynamic modules that do not link to static modules (module C).<br>However, when functions are called between dynamic modules (module A and module B), it will be easier to use the linked list, as the procedure for creating and breaking link will become complicated. 57</p> 58<p> 59The benefit of manual operation is that unnecessary link operations can be omitted. The downside is that management will become complicated. 60</p> 61<p> 62<B>Note:</B> Manual and linked list operation cannot be used together. Do not use linked list when manual specifications are made. 63</p> 64<H2>See Also</H2> 65<p> 66<a href="./demos.html">Demo Program List</a><br> <code><a href="../RSOStaticLocateObject.html">RSOStaticLocateObject</a></code>, <code><a href="../RSOLocateObject.html">RSOLocateObject</a></code>, <code><a href="../RSOUnLocateObject.html">RSOUnLocateObject</a></code>, <code><a href="../RSOLink.html">RSOLink</a></code>, <code><a href="../RSOUnLink.html">RSOUnLink</a></code>, <code><a href="../RSOFindExportSymbolAddr.html">RSOFindExportSymbolAddr</a></code>, <code><a href="../RSOIsImportSymbolResolvedAll.html">RSOIsImportSymbolResolvedAll</a></code> 67</p> 68<H2>Revision History</H2> 69<p>2006/06/14 Initial version.</p> 70 71<hr><p>CONFIDENTIAL</p></body> 72</HTML> 73