System: expand documentation of exit() method
Includes explanation that Sys.exit() bypasses Lime's ability to shut down its C++ subsystems, so System.exit() is recommended as best practice instead of Sys.exit().
This commit is contained in:
@@ -191,7 +191,18 @@ class System
|
||||
#if (!lime_doc_gen || sys)
|
||||
/**
|
||||
Attempts to exit the application. Dispatches `onExit`, and will not
|
||||
exit if the event is canceled.
|
||||
exit if the event is canceled. When exiting using this method, Lime will
|
||||
gracefully shut down a number of subsystems, including (but not limited
|
||||
to) audio, graphics, timers, and game controllers.
|
||||
|
||||
To properly exit a Lime application, it's best to call Lime's
|
||||
`System.exit()` instead of calling Haxe's built-in `Sys.exit()`. When
|
||||
targeting native platforms especially, Lime's is built on C++ libraries
|
||||
that expose functions to clean up resources properly on exit. Haxe's
|
||||
`Sys.exit()` exits immediately without giving Lime a chance to clean
|
||||
things up. With that in mind, the proper and correct way to exit a Lime
|
||||
app is by calling `lime.system.System.exit()`, and to avoid using
|
||||
`Sys.exit()`.
|
||||
**/
|
||||
public static function exit(code:Int):Void
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user