Does the bucket handler is thread safe?

For example, thread 1 get doc1, and thread 2 get doc2. Sometimes the content of doc2 is returned to thread1, and doc1 is returned to thread2.
This result of this is that the user data is not what they want.
After I add synchronize code, everything is OK.