I think it will print either T1AT2B or T2BT1A not other than that.
Reasons are
1. The reason is object B is shared across two threads and its method is synchronized.
2. Calling sleep method on a
thread wont release the lock.
3. We can't be sure that threads will be started in the sequence bywhich their start method is called.
4. Thread schedule algorithm is OS dependent.
Any comments?