Making "read from file" less blocky.
dsc at swcp.com
dsc at swcp.com
Sun Aug 4 16:43:06 EDT 2019
Even more "really out there" of the "really out there".
Don't read in the file.
Access portions JIT, that is, lazily.
Create a function that pulls in segments of the file. Kinda like this:
function segmentOfFile pStartIndex, pEndIndex, pThisFile
Or this:
function segmentOfCurrentFile pStartIndex, pEndIndex
Dar
> On Aug 4, 2019, at 1:22 PM, dsc--- via use-livecode <use-livecode at lists.runrev.com> wrote:
>
> More "really out there".
>
> I like the idea of trying to speed up an upfront foreground load. Something simple like this:
>
> put blah-plah into IntoThisVariable.
>
> where blah-blah is nana-nana or decompress( nana-nana )
> where nana-nana is one of these:
> URL ("binfile:" & ThisFile)
> shell("cat " & ThisFile)
>
> Function decompress() makes two RAM hits and requires control over the loaded files.
>
>
>> On Aug 4, 2019, at 12:47 PM, Dar Scott Consulting via use-livecode <use-livecode at lists.runrev.com> wrote:
>>
>> I love "really out there". I wanna play.
>>
>> At the start of any solution, try this. It might speed up any method but would take some time at the start.
>>
>> get shell( "cat " & ThisFile & " > dev/null" )
>>
>> I think that is likely to pre-load the system file buffers for you.
>>
>> If one is feeling adventurous, one can try open process (cat) to avoid the wait; it will probably move through the file faster than the script and sectors will already be loaded when you ask for them.
>>
>> Dar
>>
>>> On Aug 4, 2019, at 7:59 AM, Alex Tweedly via use-livecode <use-livecode at lists.runrev.com> wrote:
>>>
>>> OK, here's a "really out there" suggestion ....
>>>
>>> 1. Run a local web server to serve files (locally only).
>>>
>>> Can be done various ways, including (easily) via LC and the httpd library,
>>>
>>> (build that server as a standalone and have it running - started from your app if need be...)
>>>
>>> 2. in your stack, just do
>>>
>>> load url ("http://localhost:8080/myfilename") with message "mycallback"
>>>
>>> and handle the file once it has been read in the "mycallback" handler
>>>
>>> -- Alex.
>>>
>>>
>>> On 04/08/2019 01:56, Tom Glod via use-livecode wrote:
>>>> Hey folks,
>>>>
>>>> I'm having trouble finding a combination of settings that allows my file
>>>> loading to seem to happen in the background.
>>>>
>>>> repeat while read_result is not "eof"
>>>> read from file ThisFile for (1024 * 1000) bytes
>>>> put the result into read_result
>>>> put it after IntoThisVariable
>>>> add length(it) to amount_read
>>>> TSTProgress amount_read,ExpectedSize,"%","Loading File ..."
>>>> (Progress Indicator Handler)
>>>> wait 10 milliseconds with messages
>>>> end repeat
>>>>
>>>> no matter what I try, its still sluggish, and it seems like messages are
>>>> still accumilating instead of being processed by the engine.
>>>>
>>>> Am I missing something? Normally waiting with messages sufficiently frees
>>>> the engine to allow the UI to remain responsive.
>>>>
>>>> Thanks,
>>>>
>>>> Tom
>>>> _______________________________________________
>>>> use-livecode mailing list
>>>> use-livecode at lists.runrev.com
>>>> Please visit this url to subscribe, unsubscribe and manage your subscription preferences:
>>>> http://lists.runrev.com/mailman/listinfo/use-livecode
>>>
>>> _______________________________________________
>>> use-livecode mailing list
>>> use-livecode at lists.runrev.com
>>> Please visit this url to subscribe, unsubscribe and manage your subscription preferences:
>>> http://lists.runrev.com/mailman/listinfo/use-livecode
>>>
>>
>>
>> _______________________________________________
>> use-livecode mailing list
>> use-livecode at lists.runrev.com
>> Please visit this url to subscribe, unsubscribe and manage your subscription preferences:
>> http://lists.runrev.com/mailman/listinfo/use-livecode
>>
>
>
> _______________________________________________
> use-livecode mailing list
> use-livecode at lists.runrev.com
> Please visit this url to subscribe, unsubscribe and manage your subscription preferences:
> http://lists.runrev.com/mailman/listinfo/use-livecode
More information about the use-livecode
mailing list