During a desktop login, often you need something to complete before another thing commences, this is often referred to as the execution order or login sequence.
Synchronous and Asynchronous processing is a tool that can help tweak the order in which a login is executed. The below example refers to the Application Launcher module in Profile Unity and the information is taken directly from Liquidware Support.
Asynchronous = Script 1,2 and 3 are executed all at once and left to run their – launch and forget about it! These scripts run as the rest of the desktop continues to load.
Synchronous = follow a predefined order. In Profile Unity the sequence number in the drop down menu defines when the script launches. Of course this is also dependent on the Filter that’s in play.
Question and Answers on Profile Unity Execution Order:
If Asynchronously is not selected the logon process will be paused until this process is finished and exited) – Does this mean that ProU will wait until ALL non-Asynch scripts are completed before it moves onto the next module?
Yes that is correct. The non-async script will wait until finish before launching next non-Asynch script and it will wait to finish before moving on to next module. (Note: the script could be launched During and After configuration).
For example, if we have 10 scripts, 5 of them with Asynchronous not checked, does ProU group these 5 scripts together and start them all at once (or by their ‘order’..?) and then wait for them to complete?
It starts them one by one and waits for them to complete before starting another script.
Profile Unity Login Sequence:
Computer Start-Windows load
Computer GPOs load
Windows Startup script – LwL.profileunity.client.startup.exe – This script updates the version of PU checks make sure there is no bad userinit.exe registry key in place etc.
(Idle waiting for user to login)
User GPO’s run applying to the user
(After they finish running/applying)
Pre-ProfileUnity logn scripts run (PU module- User defined scripts)
Client.exe and all modules from configuration (Left to right):
Application Launcher runs
(if Asynchronously is selected it will load next script/module without waiting for it to finish)
(if Asynchronously is not selected the logon process will be paused until this process is finished and exited)
Rest of the modules are loaded (Left to right)
Post-ProflleUnity Logon scripts are run (PU module – User Defined Scripts)
Then ProfileUnity client loads c:\windows\system32\userinit.exe which is actually desktop and explorer.exe
Then we run any rules that were marked to run (Post logon) that could be portability/printers/drive mappings etc.
can be helpful for debugging Profile Unity login issues