No. Both the "safe" and "unsafe" versions are asynchronous. The safe version waits for a response from the server before invoking a callback. The unsafe version does not, but that doesn't make it synchronous -- the operation is still potentially executing on the server when the function returns.