¿Cuál es el punto de esta sincronización?

¿Cuál es el punto de la sincronización aquí?

¿Por qué no solo usarmConnectedThread.write(out)?

El fragmento de código es de la muestra BluetoothChat para Android(encontrado aquí)

    /**
 * Write to the ConnectedThread in an unsynchronized manner
 * @param out The bytes to write
 * @see ConnectedThread#write(byte[])
 */
public void write(byte[] out) {
    // Create temporary object
    ConnectedThread r;
    // Synchronize a copy of the ConnectedThread
    synchronized (this) {
        if (mState != STATE_CONNECTED) return;
        r = mConnectedThread;
    }
    // Perform the write unsynchronized
    r.write(out);
}

Respuestas a la pregunta(3)

Su respuesta a la pregunta