AppUi::Exit() vs User::Exit()
- User::Exit() terminates the current thread or current process ( If the current thread is the main thread in a process), cleaning up any resources used.
- User::Exit() does not call the destructors, it forcefully cleans the resources.
- This function cannot leave.
- It closes the app UI , it stops the CONE environment, the active scheduler, and calls other functions, such as CCoeEnv::PrepareToExit() before destroying the environment.
- AppUi::Exit() initiates systematic cleanup of the resources by calling destructor's and appropriate framework routines, hence it can leave even if it does not contain trailing "L".