Jump to content

API: Shutdown: Difference between revisions

From fCraft Wiki
Created page with "When an fCraft server is being shut down, the following sequence of events takes place: #Server.Shutdown ##Cancels any previous shutdown attempt. ##Verifies ShutdownParams ##Ann..."
 
mNo edit summary
Line 19: Line 19:
##Save and unload IPBanList
##Save and unload IPBanList
##''Server.ShutdownEnded''
##''Server.ShutdownEnded''
[[Category:Dev]]

Revision as of 02:04, 12 January 2012

When an fCraft server is being shut down, the following sequence of events takes place:

  1. Server.Shutdown
    1. Cancels any previous shutdown attempt.
    2. Verifies ShutdownParams
    3. Announces shutdown and starts the countdown.

After the timer elapses, Server.ShutdownNow (internal) is called on a separate thread:

  1. Server.ShutdownNow
    1. Server.ShutdownBegan
    2. Scheduler clears the list of tasks, and prevents future tasks from being added. Current task is allowed to finish.
    3. Stop listening for connections
    4. Kick all players, allow 1000ms to deliver the kick packet
    5. Disconnect IRC
    6. Save and unload all worlds
    7. Scheduler waits for current task to finish (if it is still running).
    8. Save and unload PlayerDB
    9. Save and unload IPBanList
    10. Server.ShutdownEnded