Do RMI clients always work on one single object instance of RMI server class?

Edward Harned

Yes, there is only one instance of the RMI Implementation Class.

For most implementations, the RMI Runtime creates a thread to handle each request from a Client. Once the request finishes, the thread waits for a brief period for the next Client request. In this way, the RMI-Connection may reuse threads. If no new request comes in, the RMI Runtime destroys the thread.

Therefore, both Clients A and B run in separate threads. If you have private fields within your Server Class, S, then you must ensure thread synchronization.