Single vs. Multiple Session Modes
In desktop software, a single application instance would normally have only one single user session. This means that such an application would only show one window (or set of windows) to a single user and interaction is done with that single user. If the user would like to use two different sessions, two instances of the application would have to be loaded that would not affect each other. In such cases, you should use the single session mode, which handles user sessions automatically and assumes that one process (instance) means one user session.
The multiple session mode needs to be used in multi-user applications, especially applications that have web interfaces. In such applications, a number of users might be using the same application process simultaneously. In such cases, you need to manually tell the Usage Intelligence SDK must be notified when user sessions start and stop, and also how to link events (see Feature / Event Tracking) to user sessions.
To do this, when starting or stopping a user session, the methods startSession: and stopSession: should be used, and when tracking events on a per user basis, a session ID needs to be passed as a parameter.