I concluded that when I call thread.sleep all the threads even in other requests are being blocked
That conclusion is incorrect. Thread.Sleep
does not block any other thread, it only blocks the current thread. If multiple threads are all being blocked by this line of code then it is because all of those threads are hitting this line of code.