I think you are on to something there Peter. This may be something for the bug 
reports. Is there a test stack with the debug written into it that you could 
post so we can try it on our end? 

Bob


On Nov 9, 2010, at 10:13 AM, Peter Haworth wrote:

> Spent the last day or so trying to get some data to track this problem down 
> by inserting code to write details of the time taken for various chunks of 
> code to execute into a text file so I could see what was going on.  I 
> narrowed it down to a command that loads the text property of an option 
> button by executing an SQLite SELECT statement that is defined in a custom 
> property for the button, then setting the text property of the button to the 
> resulting data.
> 
> I executed the code using exactly the same data in the same database both in 
> the IDE and the standalone.
> 
> Here's a snippet from the debug file relating to the loading of one option 
> button in the IDE:
> 
> Starting loadOneList button "DB_RcvblsAc"
>       0       Start processing SELECT...
>       1       End processing SELECT ...
>       1       Start setting menu text
>       1       End setting menu text
> 
> The number at the start of each line is the number of milliseconds since the 
> start of the loadOneList command.
> 
> Now here is a same snippet taken from the debug file created by the 
> standalone for the same button:
> 
> Starting loadOneList button "DB_RcvblsAc"
>       731     Start processing SELECT...
>       976     End processing SELECT...
>       976     Start setting menu text
>       2196    End setting menu text
> 
> As you can see, the time taken between each display is hundreds of times more 
> than in the IDE in every case.  It's not limited to just one snippet of code, 
> it's universal.  Getting through loadOneList takes roughly 1 millisecond in 
> the IDE and more than 2 seconds in the standalone.
> 
> Here's the code that is executed between the "Starting loadOneList" message 
> and the "Start processing SELECT" message:
> 
> if pselection is empty then
>      if "listValues" is among the lines of the customKeys of myControl then
>         put the listValues of myControl into tlistspec
>      else
>         put the text of myControl into tdata
>      end if
>   else
>      put pselection into tlistspec
>   end if
>   if tlistspec is not empty then
>      repeat for each line myLine in tlistspec
> 
> I stepped through the code in debug to make sure it didn't head off in 
> unexpected directions (eg setProp/getProp handlers) and there was nothing of 
> that nature. The writing of the debug information takes some time but that 
> should be the same overhead in the IDE and the standalone.
> 
> Help!
> 
> Pete Haworth
> 
> 
> 
> 
> 
> 
> 
> 
> _______________________________________________
> use-revolution mailing list
> [email protected]
> Please visit this url to subscribe, unsubscribe and manage your subscription 
> preferences:
> http://lists.runrev.com/mailman/listinfo/use-revolution

_______________________________________________
use-revolution mailing list
[email protected]
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-revolution

Reply via email to