Re: slow startup on windows

Roland Hughes via Foxgui-users <[email protected]> Fri, 25 Oct 2024 17:18:49 -0500
Newsgroups gmane.comp.lib.fox-toolkit.user
Message-ID <[email protected]>
After 25 years, due for a re-write.

Lots of XBASE/DBASE C/C++ libraries back then. C-Index/II was pretty big 
but that was a proprietary indexed system . . . not that XBASE wasn't.

Now . . . "free" cross platform data storage libraries back in the 1990s 
. . . not many. By 2000 lots. Berkley DB was really prominent prior to 
Oracle buying them. MySQL was around then too.

At any rate, if you didn't know of them, then you didn't know of them.

Here is the question though . . . "Wouldn't you want a good design 
now?"  I guess the first question would be "How close are you to 
retirement?" You could just choose to pull the pin and run on this.

On 10/25/2024 10:45 AM, John Selverian wrote:
> If I go with SQLite I'd have to rewrite my entire code. I've been
> doing this for 25 years...back then there wasn't a cross-platform
> DB available (or at least I didn't know of one).
>
>
>
> -----Original Message-----
> From: Roland Hughes via Foxgui-users
> <[email protected]>
> Sent: Friday, October 25, 2024 10:42 AM
> To: [email protected]
> Subject: Re: [Foxgui-users] slow startup on windows
>
> Everyone needs to keep an i5-gen3 around for testing.
>
> Your application doesn't run well until it runs well on that with
> a SATA
> 100 or 150 spinning disk. You can probably get the HP small form
> factor ones from a recycler for under $50 if you promise not to
> throw it in a landfill.
>
> I recommend SQLite because it is "everywhere" and you get SQL
> access. In the old days we used indexed files. Used to be
> C-Index/II and some commercial XBase libraries along with
> Btrieve, etc. There is an OpenSource XBASE library
>
> https://sourceforge.net/projects/xdb/files/
>
>
> On 10/25/2024 9:27 AM, Enno Rehling wrote:
>> I second what Roland says, don't load all those strings into
> memory,
>> or at least not into FXString objects, if you can at all help
> it.
>> Now, there's a chance you've got the strings in a big file that
> is NOT
>> a relational database, and you need to search through them in
> some
>> form. That still doesn't mean they all need to be an FXString
> (unless
>> you plan to display each and every one of them in a widget).
> Memory
>> allocation via new or malloc is expensive (more so with poorly
> written
>> allocators or on certain operating systems), and you want to
> avoid it
>> as much as you can.
>>
>> Depending on your input file format, perhaps you can just mmap
> [1]
>> that file into memory and index it in some other way? Of course
> then
>> you need to write custom code for Windows [2], because the
> WIN32 API
>> is special.
>>
>> Enno.
>>
>> References:
>> [1] https://www.man7.org/linux/man-pages/man2/mmap.2.html
>> [2]
>>
> https://learn.microsoft.com/en-us/windows/win32/memory/file-mappi
> ng
>>
>>
>> _______________________________________________
>> Foxgui-users mailing list
>> [email protected]
>> https://lists.sourceforge.net/lists/listinfo/foxgui-users
> --
> Roland Hughes, President
> Logikal Solutions
> (630)-205-1593  (cell)
> https://theminimumyouneedtoknow.com
> https://infiniteexposure.net
> https://johnsmith-book.com
>
>
>
> _______________________________________________
> Foxgui-users mailing list
> [email protected]
> https://lists.sourceforge.net/lists/listinfo/foxgui-users
>
-- 
Roland Hughes, President
Logikal Solutions
(630)-205-1593  (cell)
https://theminimumyouneedtoknow.com
https://infiniteexposure.net
https://johnsmith-book.com



_______________________________________________
Foxgui-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/foxgui-users