title: how multiple threads invoke singleton object's method and work on them?
body: <p>I have multiple threads running which access singleton object and call its method and pass objects in it. In the method I do some calculations only on recieved object.
  I have heard that there would not be any problem in this case cause it is stateless and it is free for all.</p>
  
  <p>My question is how it is free for all?
  I want to know how multiple threads can call the shared method in their own thread without overwriting the passed objects of other threads? 
  Please explain in terms of memory allocation wise and at stack level.</p>
  
  <pre><code>class Singleton class{
  
      //no shared class or object variables and only one copy of this Singleton object exists.
  
      Object someMethod(Object o){
          //do some calculation or logic on the object o and return some string result
      }
  
  }
  </code></pre>