threaded Thread last updated on 2004-05-24 13:51:23

Posted by member 159957 on 2004-05-22 20:54:51

Is there anybody running modules threaded.
Is it usefull.
I added a series of popups and starting to see my system run slower. would I benefit from running popup threaded.

Posted by member 37809 on 2004-05-23 11:35:30 link

You would want to run a module threaded if you don't want a blocking operation to ... block the rest of litestep. An example is geekamp's !amp_loadfile. Running geekamp threaded will prevent geekamp from freezing the rest of litestep when you call !amp_loadfile.

Other than that I guess there's no reason to do it unless you have more than one CPU I think. Threading is possibly unstable.

Posted by member 159957 on 2004-05-23 12:46:29 link

Thanks for the explanation.

Posted by member 111 on 2004-05-23 13:13:22 link

> Other than that I guess there's no reason to do it unless you have more than one CPU I think. Threading is possibly unstable.

Threaded modules loaded simulteniously => it is possible to speed up loading process.

But all sticky interface modules (shortcuts, labels, etc.) should be loaded before desktop module, so they cannot be run in separate thread.

Posted by member 111 on 2004-05-23 16:02:05 link

> Threading is possibly unstable.
also I didn't notice any fault caused by threading (though I have only three modules that are run in the separate threads:
literunner.dll, kidnap.dll and menu.dll or popup2.dll)

Posted by member 159957 on 2004-05-23 17:03:32 link

Maybe I could get and opinion on the loading order and if threading could be usefull for this config:
The first Is the MainTheme and the other two are SubTheme1 and SubTheme2.I switch between the three constantly ussing a label ["$LiteStepDir$utilities\LSThemeInstaller.exe" /switch .....]
To switch the wallpaper automaticly each has a theme.ini ([Install]
Wallpaper="wallpaper\background.bmp"
WallpaperStyle="centered")

MainTheme:
LoadModule c:\litestep\modules\jdesk-0.711.dll
LoadModule c:\litestep\modules\gestures.dll
LoadModule c:\litestep\modules\popup2.dll
LoadModule c:\litestep\modules\xlabellight-1.1.dll
LoadModule c:\litestep\modules\systray.dll
LoadModule c:\litestep\modules\lsplus.dll
LoadModule c:\litestep\modules\clockwork-0.62.dll
LoadModule c:\litestep\modules\tasks.dll
LoadModule c:\litestep\modules\taskbar3-0.305.dll
LoadModule c:\litestep\modules\lsslider.dll
LoadModule c:\litestep\modules\rainmation.dll

SubTheme1
LoadModule $litestepDir$modules\jdesk-0.711
LoadModule $litestepDir$modules\xlabellight-1.1
LoadModule $litestepDir$modules\LiteRunner
LoadModule $litestepDir$modules\kidnap

SubTheme2
LoadModule $litestepDir$modules\jdesk-0.711
LoadModule $litestepDir$modules\label-1.99
LoadModule c:\litestep\modules\lsplus


Thankyou,

Posted by member 99 on 2004-05-23 18:24:41 link

Threaded modules load simultaneously *if* you're not using NLM. NLM will load threaded modules sequencially, which could be good or bad depending on the situation, though it'd be very hard for NLM to provide the option.

And you want anything that's "on bottom" *after* the desktop module. (because they are actually docked to the desktop window) Things that are only floating or on top usually don't really need the desktop.

Most modules work ok with threading because there's only ever one thread executing in the module, but it can screw up some types of advanced scripting/inter-module communication. (there are some other cases that are less likely too)

Also, threading will probably use *slightly* more CPU time, I think way less than 1%. It's doesn't actually make things faster, just potentially more responsive. And even then most likely only LiteStep itself. It's really useful if you've got flaky modules that like to run off and freeze everything. Put them in a separate thread and they don't take out all of LS.

Posted by member 159957 on 2004-05-23 22:04:27 link

Thanks a lot on the module order explanation.
regarding the threaded I think then Ill wait and see wich module wants to create problems, and at that point see if threading it helps.
Thanks.

Posted by member 7 on 2004-05-24 13:51:23 link

inform-sega: Try loading lsbox or tasks in their own threads. ;)